Re: [cx-oracle-users] Arraysize dependent on run time?
Brought to you by:
atuining
From: Shai B. <sh...@pl...> - 2016-08-28 20:21:43
|
Then, perhaps you can just avoid doing that? If I get it right, the ArraySize does not limit the size of overall returned results, but only the size returned to the client in one batch. Add to this that, according to the documentation you linked and quoted yourself, 6,000 is not a valid value... Why don't you just try leaving that value alone? On Thursday 25 August 2016 12:59:07 Moritz Liebelt wrote: > Hi Shai, > > I did a test query in sql Developer and it seems that Oracle is not > responsible for that. > > But to fetch all the rows from my Database I have to increase the arraysize > in cx_Oracle (*cursor.arraysize* default=50, my setting = 6.000) > Furthermore it is written in the Oracle Docu > > *SET ARRAY[SIZE] {15 | n} > <https://docs.oracle.com/cd/B28359_01/server.111/b31189/ch12040.htm#i269862 > 5>* * Sets the number of rows, called a batch, that SQL*Plus will fetch > from the database at one time.Valid values are 1 to 5000. A large value > increases the efficiency of queries and subqueries that fetch many rows, > but requires more memory.* > > And In my case under 5000 rows it neeeds some milliseconds and over 5000 > rows it needs some seconds. So is this depending on the arraysize? > > 2016-08-23 21:42 GMT+02:00 Shai Berger <sh...@pl...>: > > Hi Moritz, > > > > Two notions come to mind: > > > > 1) Are you sure the time is wasted in Python-land? Do you have a way to > > measure the execution of the query without Python or cx_Oracle being > > invoved > > (e.g. in SQL*Plus)? > > > > 2) Assuming it is -- I've seen delays on the order of seconds show up > > when you > > create a lot of circular references -- the Python GC gets invoked then > > and can > > cause surprisingly large "lapses". You can check the documentation of the > > stdlib's gc module for ways to verify and/or eliminate this issue. > > > > HTH, > > > > Shai. > > > > On Tuesday 23 August 2016 18:43:26 Moritz Liebelt wrote: > > > Hi, > > > > > > I fetch rows form an Oracle Locator DB with web.py and cx_Oracle! I use > > > > the > > > > > unreleased version of cx_Oracle! Furthermore I read the sdo_geometry > > > objects in the sql-statement and build a json based on this. > > > > > > For a 500m-Tile with 4634 rows I need 0,326 (measured time in the > > > > browser= > > > > > waiting time (DB + Webserver)) > > > For a 500m-Tile with 5081 rows I need 10,1 second??? > > > You can see an overview > > > > > > *500m-Tile_A ( 2311 rows)* *500m-Tile_B (3799 rows)* *400m-Tile (4137 > > > > > > rows)* *500m-Tile_E (4634 rows)* *500m-Tile_C (5081 rows)* *500m-Tile > > > _D (6241 rows)* > > > *sdo_geometry (cx_Oracle)* 0,18s 0,26s 0,27s 0,326s 10,1s 13,77s > > > *Size* 729KB 1,2 MB 1,3 MB 1,4MB 1,6 MB 2 MB > > > > > > Is there anywhere a Threshold? Because the time is increasing and I do > > > > not > > > > > understand why. > > > It does not refer to Browser problems. I think that this is depending > > > on the webserver. > > > > > > Does someone knows this issue? > > > > ------------------------------------------------------------ > > ------------------ > > _______________________________________________ > > cx-oracle-users mailing list > > cx-...@li... > > https://lists.sourceforge.net/lists/listinfo/cx-oracle-users |