use of com.google.spanner.v1.CreateSessionRequest in project grpc-gcp-java by GoogleCloudPlatform.
the class SpannerIntegrationTest method testBoundWithInvalidAffinityKey.
@Test
public void testBoundWithInvalidAffinityKey() {
SpannerBlockingStub stub = getSpannerBlockingStub();
CreateSessionRequest req = CreateSessionRequest.newBuilder().setDatabase(DATABASE_PATH).build();
Session session = stub.createSession(req);
expectedEx.expect(StatusRuntimeException.class);
expectedEx.expectMessage("INVALID_ARGUMENT: Invalid GetSession request.");
// No channel bound with the key "invalid_session", will use the least busy one.
stub.getSession(GetSessionRequest.newBuilder().setName("invalid_session").build());
}
use of com.google.spanner.v1.CreateSessionRequest in project grpc-gcp-java by GoogleCloudPlatform.
the class SpannerIntegrationTest method createAsyncSessions.
private List<String> createAsyncSessions(SpannerStub stub) throws Exception {
List<AsyncResponseObserver<Session>> resps = new ArrayList<>();
List<String> respNames = new ArrayList<>();
// Check the state of the channel first.
assertEquals(ConnectivityState.IDLE, gcpChannel.getState(false));
// Check CreateSession with multiple channels and streams,
CreateSessionRequest req = CreateSessionRequest.newBuilder().setDatabase(DATABASE_PATH).build();
for (int i = 0; i < MAX_CHANNEL * MAX_STREAM; i++) {
AsyncResponseObserver<Session> resp = new AsyncResponseObserver<Session>();
stub.createSession(req, resp);
resps.add(resp);
}
checkChannelRefs(MAX_CHANNEL, MAX_STREAM, 0);
for (AsyncResponseObserver<Session> resp : resps) {
respNames.add(resp.get().getName());
}
// Since createSession will bind the key, check the number of keys bound with channels.
assertEquals(ConnectivityState.READY, gcpChannel.getState(false));
assertEquals(MAX_CHANNEL * MAX_STREAM, gcpChannel.affinityKeyToChannelRef.size());
checkChannelRefs(MAX_CHANNEL, 0, MAX_STREAM);
return respNames;
}
use of com.google.spanner.v1.CreateSessionRequest in project swiftmq-client by iitsoftware.
the class QueueConnectionImpl method createQueueSession.
public QueueSession createQueueSession(boolean transacted, int acknowledgeMode) throws JMSException {
verifyState();
SessionImpl queueSession = null;
CreateSessionReply reply = null;
try {
reply = (CreateSessionReply) requestRegistry.request(new CreateSessionRequest(0, transacted, acknowledgeMode, CreateSessionRequest.QUEUE_SESSION, 0));
} catch (Exception e) {
throw ExceptionConverter.convert(e);
}
if (reply.isOk()) {
int dispatchId = reply.getSessionDispatchId();
queueSession = new SessionImpl(SessionImpl.TYPE_QUEUE_SESSION, this, transacted, acknowledgeMode, dispatchId, requestRegistry, myHostname, null);
queueSession.setUserName(getUserName());
queueSession.setMyDispatchId(addRequestService(queueSession));
addSession(queueSession);
} else {
throw ExceptionConverter.convert(reply.getException());
}
return (queueSession);
}
use of com.google.spanner.v1.CreateSessionRequest in project swiftmq-client by iitsoftware.
the class TopicConnectionImpl method createTopicSession.
public TopicSession createTopicSession(boolean transacted, int acknowledgeMode) throws JMSException {
verifyState();
SessionImpl topicSession = null;
CreateSessionReply reply = null;
try {
reply = (CreateSessionReply) requestRegistry.request(new CreateSessionRequest(0, transacted, acknowledgeMode, CreateSessionRequest.TOPIC_SESSION, 0));
} catch (Exception e) {
throw ExceptionConverter.convert(e);
}
if (reply.isOk()) {
int dispatchId = reply.getSessionDispatchId();
String cid = clientID != null ? clientID : internalCID;
topicSession = new SessionImpl(SessionImpl.TYPE_TOPIC_SESSION, this, transacted, acknowledgeMode, dispatchId, requestRegistry, myHostname, cid);
topicSession.setUserName(userName);
topicSession.setMyDispatchId(addRequestService(topicSession));
addSession(topicSession);
} else {
throw ExceptionConverter.convert(reply.getException());
}
return (topicSession);
}
use of com.google.spanner.v1.CreateSessionRequest in project swiftmq-client by iitsoftware.
the class QueueConnectionImpl method createQueueSession.
public QueueSession createQueueSession(boolean transacted, int acknowledgeMode) throws JMSException {
verifyState();
SessionImpl queueSession = null;
CreateSessionReply reply = null;
try {
reply = (CreateSessionReply) requestRegistry.request(new CreateSessionRequest(0, transacted, acknowledgeMode, CreateSessionRequest.QUEUE_SESSION, 0));
} catch (Exception e) {
throw ExceptionConverter.convert(e);
}
if (reply.isOk()) {
int dispatchId = reply.getSessionDispatchId();
queueSession = new SessionImpl(SessionImpl.TYPE_QUEUE_SESSION, this, transacted, acknowledgeMode, dispatchId, requestRegistry, myHostname, null);
queueSession.setUserName(getUserName());
queueSession.setMyDispatchId(addRequestService(queueSession));
addSession(queueSession);
} else {
throw ExceptionConverter.convert(reply.getException());
}
return (queueSession);
}
Aggregations