Skip to content

Commit

Permalink
Talk about Connection rather than Session
Browse files Browse the repository at this point in the history
  • Loading branch information
thobe committed Jan 17, 2017
1 parent a322c95 commit fa984ac
Show file tree
Hide file tree
Showing 30 changed files with 110 additions and 110 deletions.
Expand Up @@ -40,8 +40,8 @@
import org.neo4j.kernel.impl.query.Neo4jTransactionalContextFactory;
import org.neo4j.kernel.impl.query.QueryExecutionEngine;
import org.neo4j.kernel.impl.query.QueryExecutionKernelException;
import org.neo4j.kernel.impl.query.clientsession.BoltSessionInfo;
import org.neo4j.kernel.impl.query.clientsession.ClientSessionInfo;
import org.neo4j.kernel.impl.query.clientconnection.BoltConnectionInfo;
import org.neo4j.kernel.impl.query.clientconnection.ClientConnectionInfo;
import org.neo4j.kernel.impl.query.TransactionalContext;
import org.neo4j.kernel.impl.query.TransactionalContextFactory;
import org.neo4j.kernel.impl.transaction.log.TransactionIdStore;
Expand Down Expand Up @@ -124,7 +124,7 @@ public BoltResultHandle executeQuery( BoltQuerySource querySource,
Map<String,Object> params, ThrowingAction<KernelException> onFail ) throws QueryExecutionKernelException
{
InternalTransaction internalTransaction = queryService.beginTransaction( implicit, securityContext );
ClientSessionInfo sourceDetails = new BoltSessionInfo( querySource.principalName,
ClientConnectionInfo sourceDetails = new BoltConnectionInfo( querySource.principalName,
querySource.clientName,
querySource.connectionDescriptor.clientAddress,
querySource.connectionDescriptor.serverAddress );
Expand Down
Expand Up @@ -37,7 +37,7 @@ import org.neo4j.cypher.{ExecutionEngineFunSuite, NewPlannerTestSupport, QuerySt
import org.neo4j.kernel.GraphDatabaseQueryService
import org.neo4j.kernel.impl.coreapi.PropertyContainerLocker
import org.neo4j.kernel.impl.query.Neo4jTransactionalContextFactory
import org.neo4j.kernel.impl.query.clientsession.ClientSessionInfo
import org.neo4j.kernel.impl.query.clientconnection.ClientConnectionInfo
import org.neo4j.kernel.monitoring.{Monitors => KernelMonitors}
import org.neo4j.test.TestGraphDatabaseFactory

Expand Down Expand Up @@ -497,19 +497,19 @@ class CompilerComparisonTest extends ExecutionEngineFunSuite with QueryStatistic
}

private def runQueryWith(query: String, compiler: CypherCompiler, db: GraphDatabaseQueryService): (List[Map[String, Any]], InternalExecutionResult) = {
val sessionInfo = ClientSessionInfo.EMBEDDED_SESSION
val connectionInfo = ClientConnectionInfo.EMBEDDED_CONNECTION
val locker = new PropertyContainerLocker()

val contextFactory = Neo4jTransactionalContextFactory.create(db, locker)

val (executionPlan: ExecutionPlan, extractedParams: Map[String, Any]) = db.withTx { tx =>
val transactionalContext = contextFactory.newContext(sessionInfo, tx, query, Collections.emptyMap())
val transactionalContext = contextFactory.newContext(connectionInfo, tx, query, Collections.emptyMap())
val planContext = new TransactionBoundPlanContext(TransactionalContextWrapper(transactionalContext), devNullLogger)
compiler.planQuery(query, planContext, devNullLogger)
}

db.withTx { tx =>
val transactionalContext = contextFactory.newContext(sessionInfo, tx, query, Collections.emptyMap())
val transactionalContext = contextFactory.newContext(connectionInfo, tx, query, Collections.emptyMap())
val tcWrapper = TransactionalContextWrapper(transactionalContext)
val queryContext = new TransactionBoundQueryContext(tcWrapper)(indexSearchMonitor)
val result = executionPlan.run(queryContext, ProfileMode, extractedParams)
Expand Down
Expand Up @@ -28,7 +28,7 @@ import org.neo4j.cypher.internal.spi.v3_2.TransactionBoundQueryContext.IndexSear
import org.neo4j.kernel.GraphDatabaseQueryService
import org.neo4j.kernel.impl.coreapi.{InternalTransaction, PropertyContainerLocker}
import org.neo4j.kernel.impl.query.Neo4jTransactionalContextFactory
import org.neo4j.kernel.impl.query.clientsession.ClientSessionInfo
import org.neo4j.kernel.impl.query.clientconnection.ClientConnectionInfo
import org.neo4j.kernel.monitoring.{Monitors => KernelMonitors}

import scala.collection.mutable
Expand All @@ -45,7 +45,7 @@ object QueryStateHelper {
def queryStateFrom(db: GraphDatabaseQueryService, tx: InternalTransaction, params: Map[String, Any] = Map.empty): QueryState = {
val searchMonitor = new KernelMonitors().newMonitor(classOf[IndexSearchMonitor])
val contextFactory = Neo4jTransactionalContextFactory.create(db, locker)
val transactionalContext = TransactionalContextWrapper(contextFactory.newContext(ClientSessionInfo.EMBEDDED_SESSION, tx, "X", Collections.emptyMap()))
val transactionalContext = TransactionalContextWrapper(contextFactory.newContext(ClientConnectionInfo.EMBEDDED_CONNECTION, tx, "X", Collections.emptyMap()))
val queryContext = new TransactionBoundQueryContext(transactionalContext)(searchMonitor)
newWith(db = db, query = queryContext, params = params)
}
Expand Down
Expand Up @@ -41,7 +41,7 @@ import org.neo4j.kernel.api.{KernelTransaction, Statement}
import org.neo4j.kernel.impl.coreapi.PropertyContainerLocker
import org.neo4j.time.Clocks
import org.neo4j.kernel.impl.query.Neo4jTransactionalContextFactory
import org.neo4j.kernel.impl.query.clientsession.ClientSessionInfo
import org.neo4j.kernel.impl.query.clientconnection.ClientConnectionInfo
import org.scalatest.mock.MockitoSugar

import scala.collection.JavaConversions
Expand Down Expand Up @@ -70,7 +70,7 @@ trait CodeGenSugar extends MockitoSugar {
try {
val locker: PropertyContainerLocker = new PropertyContainerLocker
val contextFactory = Neo4jTransactionalContextFactory.create(graphDb, locker)
val transactionalContext = TransactionalContextWrapper(contextFactory.newContext(ClientSessionInfo.EMBEDDED_SESSION, tx,
val transactionalContext = TransactionalContextWrapper(contextFactory.newContext(ClientConnectionInfo.EMBEDDED_CONNECTION, tx,
"no query text exists for this test", Collections.emptyMap()))
val queryContext = new TransactionBoundQueryContext(transactionalContext)(mock[IndexSearchMonitor])
val result = plan.executionResultBuilder(queryContext, mode, tracer(mode), Map.empty, new TaskCloser)
Expand Down
Expand Up @@ -42,7 +42,7 @@ import org.neo4j.kernel.api.security.SecurityContext
import org.neo4j.kernel.impl.core.ThreadToStatementContextBridge
import org.neo4j.kernel.impl.coreapi.{InternalTransaction, PropertyContainerLocker}
import org.neo4j.kernel.impl.query.Neo4jTransactionalContextFactory
import org.neo4j.kernel.impl.query.clientsession.ClientSessionInfo
import org.neo4j.kernel.impl.query.clientconnection.ClientConnectionInfo
import org.neo4j.test.TestGraphDatabaseFactory

import scala.collection.mutable
Expand Down Expand Up @@ -236,7 +236,7 @@ class ActualCostCalculationTest extends CypherFunSuite {

private def transactionContext(graph: GraphDatabaseQueryService, tx: InternalTransaction) = {
val contextFactory = Neo4jTransactionalContextFactory.create(graph, new PropertyContainerLocker)
contextFactory.newContext(ClientSessionInfo.EMBEDDED_SESSION, tx, "X", Collections.emptyMap())
contextFactory.newContext(ClientConnectionInfo.EMBEDDED_CONNECTION, tx, "X", Collections.emptyMap())
}

//executes the provided pipes and returns execution times
Expand Down
Expand Up @@ -35,7 +35,7 @@ import org.neo4j.kernel.impl.core.ThreadToStatementContextBridge
import org.neo4j.kernel.impl.coreapi.{InternalTransaction, PropertyContainerLocker}
import org.neo4j.kernel.impl.factory.GraphDatabaseFacade
import org.neo4j.kernel.impl.query._
import org.neo4j.kernel.impl.query.clientsession.ClientSessionInfo
import org.neo4j.kernel.impl.query.clientconnection.ClientConnectionInfo
import org.neo4j.kernel.impl.transaction.TransactionStats

import scala.collection.JavaConverters._
Expand Down Expand Up @@ -108,7 +108,7 @@ trait GraphIcing {
val javaParams = javaValues.asDeepJavaMap(params).asInstanceOf[util.Map[String, AnyRef]]
val contextFactory = Neo4jTransactionalContextFactory.create(graphService,
locker)
val transactionalContext = contextFactory.newContext(ClientSessionInfo.EMBEDDED_SESSION, tx, queryText, javaParams)
val transactionalContext = contextFactory.newContext(ClientConnectionInfo.EMBEDDED_CONNECTION, tx, queryText, javaParams)
(tx, transactionalContext)
}

Expand Down
Expand Up @@ -30,14 +30,14 @@ import org.neo4j.kernel.api.KernelTransaction.Type._
import org.neo4j.kernel.api.security.SecurityContext.AUTH_DISABLED
import org.neo4j.kernel.impl.coreapi.{InternalTransaction, PropertyContainerLocker}
import org.neo4j.kernel.impl.query.Neo4jTransactionalContextFactory
import org.neo4j.kernel.impl.query.clientsession.ClientSessionInfo
import org.neo4j.kernel.impl.query.clientconnection.ClientConnectionInfo
import org.neo4j.test.TestGraphDatabaseFactory

class TransactionBoundPlanContextTest extends CypherFunSuite {

private def createTransactionContext(graphDatabaseCypherService: GraphDatabaseCypherService, transaction: InternalTransaction) = {
val contextFactory = Neo4jTransactionalContextFactory.create(graphDatabaseCypherService, new PropertyContainerLocker)
contextFactory.newContext(ClientSessionInfo.EMBEDDED_SESSION, transaction, "no query", Collections.emptyMap())
contextFactory.newContext(ClientConnectionInfo.EMBEDDED_CONNECTION, transaction, "no query", Collections.emptyMap())
}

test("statistics should default to single cardinality on empty db") {
Expand Down
Expand Up @@ -39,7 +39,7 @@ import org.neo4j.kernel.impl.coreapi.{InternalTransaction, PropertyContainerLock
import org.neo4j.kernel.impl.factory.CanWrite
import org.neo4j.kernel.impl.proc.Procedures
import org.neo4j.kernel.impl.locking.LockTracer
import org.neo4j.kernel.impl.query.clientsession.ClientSessionInfo
import org.neo4j.kernel.impl.query.clientconnection.ClientConnectionInfo
import org.neo4j.kernel.impl.query.{Neo4jTransactionalContext, Neo4jTransactionalContextFactory}
import org.neo4j.storageengine.api.StorageStatement
import org.neo4j.test.TestGraphDatabaseFactory
Expand Down Expand Up @@ -166,7 +166,7 @@ class TransactionBoundQueryContextTest extends CypherFunSuite {

private def createTransactionContext(graphDatabaseCypherService: GraphDatabaseCypherService, transaction: InternalTransaction) = {
val contextFactory = Neo4jTransactionalContextFactory.create(graphDatabaseCypherService, new PropertyContainerLocker)
contextFactory.newContext(ClientSessionInfo.EMBEDDED_SESSION, transaction, "no query", Collections.emptyMap())
contextFactory.newContext(ClientConnectionInfo.EMBEDDED_CONNECTION, transaction, "no query", Collections.emptyMap())
}

private def createMiniGraph(relTypeName: String): Node = {
Expand Down
Expand Up @@ -26,7 +26,7 @@

import org.neo4j.kernel.impl.locking.LockTracer;
import org.neo4j.kernel.impl.locking.LockWaitEvent;
import org.neo4j.kernel.impl.query.clientsession.ClientSessionInfo;
import org.neo4j.kernel.impl.query.clientconnection.ClientConnectionInfo;
import org.neo4j.storageengine.api.lock.ResourceType;
import org.neo4j.time.CpuClock;
import org.neo4j.time.SystemNanoClock;
Expand All @@ -44,7 +44,7 @@ public class ExecutingQuery
private final long queryId;
private final LockTracer lockTracer = ExecutingQuery.this::waitForLock;
private final String username;
private final ClientSessionInfo clientSession;
private final ClientConnectionInfo clientConnection;
private final String queryText;
private final Map<String, Object> queryParameters;
private final long startTime; // timestamp in milliseconds
Expand All @@ -60,7 +60,7 @@ public class ExecutingQuery

public ExecutingQuery(
long queryId,
ClientSessionInfo clientSession,
ClientConnectionInfo clientConnection,
String username,
String queryText,
Map<String,Object> queryParameters,
Expand All @@ -70,7 +70,7 @@ public ExecutingQuery(
CpuClock cpuClock
) {
this.queryId = queryId;
this.clientSession = clientSession;
this.clientConnection = clientConnection;
this.username = username;
this.queryText = queryText;
this.queryParameters = queryParameters;
Expand Down Expand Up @@ -115,9 +115,9 @@ public String username()
return username;
}

public ClientSessionInfo clientSession()
public ClientConnectionInfo clientConnection()
{
return clientSession;
return clientConnection;
}

public String queryText()
Expand Down Expand Up @@ -176,7 +176,7 @@ public Map<String,Object> status()

public String connectionDetailsForLogging()
{
return clientSession.asConnectionDetails();
return clientConnection.asConnectionDetails();
}

private LockWaitEvent waitForLock( ResourceType resourceType, long[] resourceIds )
Expand Down
Expand Up @@ -22,7 +22,7 @@
import java.util.Map;
import java.util.stream.Stream;

import org.neo4j.kernel.impl.query.clientsession.ClientSessionInfo;
import org.neo4j.kernel.impl.query.clientconnection.ClientConnectionInfo;


/**
Expand Down Expand Up @@ -50,7 +50,7 @@ public interface QueryRegistryOperations
* Registers a query, and creates the ExecutingQuery object for it.
*/
ExecutingQuery startQueryExecution(
ClientSessionInfo descriptor, String queryText, Map<String, Object> queryParameters
ClientConnectionInfo descriptor, String queryText, Map<String, Object> queryParameters
);

/**
Expand Down
Expand Up @@ -101,7 +101,7 @@
import org.neo4j.kernel.impl.api.store.RelationshipIterator;
import org.neo4j.kernel.impl.proc.Procedures;
import org.neo4j.kernel.impl.util.Cursors;
import org.neo4j.kernel.impl.query.clientsession.ClientSessionInfo;
import org.neo4j.kernel.impl.query.clientconnection.ClientConnectionInfo;
import org.neo4j.register.Register.DoubleLongRegister;
import org.neo4j.storageengine.api.LabelItem;
import org.neo4j.storageengine.api.NodeItem;
Expand Down Expand Up @@ -1422,7 +1422,7 @@ public Stream<ExecutingQuery> executingQueries()

@Override
public ExecutingQuery startQueryExecution(
ClientSessionInfo descriptor,
ClientConnectionInfo descriptor,
String queryText,
Map<String,Object> queryParameters )
{
Expand Down
Expand Up @@ -24,7 +24,7 @@

import org.neo4j.kernel.api.ExecutingQuery;
import org.neo4j.kernel.impl.api.operations.QueryRegistrationOperations;
import org.neo4j.kernel.impl.query.clientsession.ClientSessionInfo;
import org.neo4j.kernel.impl.query.clientconnection.ClientConnectionInfo;
import org.neo4j.kernel.impl.util.MonotonicCounter;
import org.neo4j.time.CpuClock;
import org.neo4j.time.SystemNanoClock;
Expand Down Expand Up @@ -55,15 +55,15 @@ public void registerExecutingQuery( KernelStatement statement, ExecutingQuery ex
@Override
public ExecutingQuery startQueryExecution(
KernelStatement statement,
ClientSessionInfo clientSession,
ClientConnectionInfo clientConnection,
String queryText,
Map<String,Object> queryParameters
)
{
long queryId = lastQueryId.incrementAndGet();
Thread thread = Thread.currentThread();
ExecutingQuery executingQuery =
new ExecutingQuery( queryId, clientSession, statement.username(), queryText, queryParameters,
new ExecutingQuery( queryId, clientConnection, statement.username(), queryText, queryParameters,
statement.getTransaction().getMetaData(), thread, clock, CpuClock.CPU_CLOCK );
registerExecutingQuery( statement, executingQuery );
return executingQuery;
Expand Down
Expand Up @@ -24,7 +24,7 @@

import org.neo4j.kernel.api.ExecutingQuery;
import org.neo4j.kernel.impl.api.KernelStatement;
import org.neo4j.kernel.impl.query.clientsession.ClientSessionInfo;
import org.neo4j.kernel.impl.query.clientconnection.ClientConnectionInfo;

/**
* Query execution monitoring operations.
Expand All @@ -37,7 +37,7 @@ public interface QueryRegistrationOperations

ExecutingQuery startQueryExecution(
KernelStatement statement,
ClientSessionInfo descriptor,
ClientConnectionInfo descriptor,
String queryText,
Map<String, Object> queryParameters
);
Expand Down
Expand Up @@ -31,7 +31,7 @@
import org.neo4j.kernel.impl.coreapi.InternalTransaction;
import org.neo4j.kernel.impl.coreapi.PropertyContainerLocker;
import org.neo4j.kernel.impl.factory.GraphDatabaseFacade;
import org.neo4j.kernel.impl.query.clientsession.ClientSessionInfo;
import org.neo4j.kernel.impl.query.clientconnection.ClientConnectionInfo;

import static org.neo4j.function.Suppliers.lazySingleton;

Expand Down Expand Up @@ -98,16 +98,17 @@ private Neo4jTransactionalContextFactory(

@Override
public final Neo4jTransactionalContext newContext(
ClientSessionInfo clientSession,
ClientConnectionInfo clientConnection,
InternalTransaction tx,
String queryText,
Map<String,Object> queryParameters
)
{
Statement initialStatement = statementSupplier.get();
ClientSessionInfo sessionWithUserName = clientSession.withUsername( tx.securityContext().subject().username() );
ClientConnectionInfo connectionWithUserName = clientConnection.withUsername(
tx.securityContext().subject().username() );
ExecutingQuery executingQuery = initialStatement.queryRegistration().startQueryExecution(
sessionWithUserName, queryText, queryParameters
connectionWithUserName, queryText, queryParameters
);
return contextCreator.create( statementSupplier, tx, initialStatement, executingQuery );
}
Expand Down
Expand Up @@ -20,7 +20,7 @@
package org.neo4j.kernel.impl.query;

import org.neo4j.helpers.Service;
import org.neo4j.kernel.impl.query.clientsession.ClientSessionInfo;
import org.neo4j.kernel.impl.query.clientconnection.ClientConnectionInfo;
import org.neo4j.kernel.impl.util.Dependencies;
import org.neo4j.kernel.internal.GraphDatabaseAPI;

Expand Down Expand Up @@ -61,8 +61,8 @@ public static QueryExecutionEngine noEngine()
return NoQueryEngine.INSTANCE;
}

public static ClientSessionInfo describe()
public static ClientConnectionInfo describe()
{
return ClientSessionInfo.EMBEDDED_SESSION;
return ClientConnectionInfo.EMBEDDED_CONNECTION;
}
}
Expand Up @@ -22,11 +22,11 @@
import java.util.Map;

import org.neo4j.kernel.impl.coreapi.InternalTransaction;
import org.neo4j.kernel.impl.query.clientsession.ClientSessionInfo;
import org.neo4j.kernel.impl.query.clientconnection.ClientConnectionInfo;

public interface TransactionalContextFactory
{
TransactionalContext newContext( ClientSessionInfo descriptor,
TransactionalContext newContext( ClientConnectionInfo descriptor,
InternalTransaction tx,
String queryText,
Map<String,Object> queryParameters
Expand Down
Expand Up @@ -17,19 +17,19 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package org.neo4j.kernel.impl.query.clientsession;
package org.neo4j.kernel.impl.query.clientconnection;

import java.net.InetSocketAddress;
import java.net.SocketAddress;

public class BoltSessionInfo extends ClientSessionInfo
public class BoltConnectionInfo extends ClientConnectionInfo
{
private final String principalName;
private final String clientName;
private final SocketAddress clientAddress;
private final SocketAddress serverAddress;

public BoltSessionInfo(
public BoltConnectionInfo(
String principalName,
String clientName,
SocketAddress clientAddress,
Expand Down

0 comments on commit fa984ac

Please sign in to comment.