jmac11 / googlecloudsql

Automatically exported from code.google.com/p/googlecloudsql
0 stars 0 forks source link

Max response limit 16MB #66

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
The page https://developers.google.com/cloud-sql/docs/billing is missing 
information about the processing power of the various instance types.

Can you list something like GCEU units for each instance type?

Also, are there any plans to raise the 16MB response limit (at least for 
instance types that come with larger memory) or is paging at the moment the 
only possible way to select large datasets? 16MB seems very little for GAE 
backends and other clients that could easily fetch larger results.

Original issue reported on code.google.com by marcel.m...@gmail.com on 8 May 2013 at 7:28

GoogleCodeExporter commented 9 years ago
Regarding the CPU for each instance type, Cloud SQL provides a sufficient 
amount of CPU for the ram.  We do not expose the exact CPU allocated.

Regarding the 16MB limit, the clients will automatically stream large results.  
The only problem is when a single row is larger than 16MB.

Original comment by k...@google.com on 9 May 2013 at 8:43

GoogleCodeExporter commented 9 years ago
Thanks for info.

As for the 16MB limit I managed to get sometimes "Resultset too large" error 
messages.

Based on what condition is Cloud SQL returning this error? The query was a 
simple select, not requiring any special sorting/grouping.

Original comment by marcel.m...@gmail.com on 9 May 2013 at 8:51

GoogleCodeExporter commented 9 years ago
This shouldn't be happening.  Please provide a reproducible test case.

Original comment by k...@google.com on 9 May 2013 at 10:05

GoogleCodeExporter commented 9 years ago
Please ping us again if you're hitting the "Resultset too large" error messages.

Original comment by t...@google.com on 14 Aug 2013 at 3:45

GoogleCodeExporter commented 9 years ago
Hi, I have just come up against the same error mentioned here and I was 
wondering if you could provide some more insights about it. For the reference, 
I am getting the error in the backend (class = B8, instances = 1, options = 
dynamic). 

The query is a simple SELECT *...and the expected number of records to be 
returned is around 716.235 records. Also, fetchSize was set up as 100 when 
getting the result set.

Please, see below the stack trace:

Exception thrown while processing the batch. Cause:  Resultset too large - 
StackTrace: java.sql.SQLInvalidAuthorizationSpecException:  Resultset too large
    at com.google.cloud.sql.jdbc.internal.Exceptions.newSqlExceptionForApplicationError(Exceptions.java:196)
    at com.google.cloud.sql.jdbc.internal.Exceptions.newSqlException(Exceptions.java:215)
    at com.google.cloud.sql.jdbc.internal.SqlProtoClient.check(SqlProtoClient.java:198)
    at com.google.cloud.sql.jdbc.internal.SqlProtoClient.executeSql(SqlProtoClient.java:87)
    at com.google.cloud.sql.jdbc.internal.SqlProtoClient.executeSql(SqlProtoClient.java:76)
    at com.google.cloud.sql.jdbc.Connection.executeSql(Connection.java:528)
    at com.google.cloud.sql.jdbc.PreparedStatement.executeSqlImpl(PreparedStatement.java:141)
    at com.google.cloud.sql.jdbc.Statement.executeImpl(Statement.java:154)
    at com.google.cloud.sql.jdbc.Statement.executeQuery(Statement.java:327)
    at com.google.cloud.sql.jdbc.Statement.executeQuery(Statement.java:41)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:45)
    at org.apache.ibatis.logging.jdbc.PreparedStatementLogger.invoke(PreparedStatementLogger.java:38)
    at com.sun.proxy.$Proxy101.executeQuery(Unknown Source)
    at com.londonhydro.api.manager.impl.MergeManagerImpl.initializePrepareStatement(MergeManagerImpl.java:239)
    at com.londonhydro.api.manager.impl.MergeManagerImpl.processETLStatements(MergeManagerImpl.java:199)
    at com.londonhydro.api.manager.impl.MergeManagerImpl.processETLData(MergeManagerImpl.java:109)
    at com.londonhydro.api.service.impl.GAEQueueServiceImpl.processETLUpdates(GAEQueueServiceImpl.java:45)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:45)
    at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:167)
    at org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:257)
    at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:222)
    at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:211)
    at org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:542)
    at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:524)
    at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:126)
    at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208)
    at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55)
    at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
    at com.google.inject.servlet.DefaultFilterPipeline.dispatch(DefaultFilterPipeline.java:43)
    at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
    at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
    at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
    at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
    at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
    at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
    at org.mortbay.jetty.Server.handle(Server.java:326)
    at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
    at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
    at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
    at com.google.tracing.TraceContext$TraceContextRunnable.runInContext(TraceContext.java:435)
    at com.google.tracing.TraceContext$TraceContextRunnable$1.run(TraceContext.java:442)
    at com.google.tracing.CurrentContext.runInContext(CurrentContext.java:186)
    at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:306)
    at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:298)
    at com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:439)
    at java.lang.Thread.run(Thread.java:724)

Original comment by di.kha...@gmail.com on 16 Oct 2013 at 3:40