|
99 | 99 | #include <cstdlib>
|
100 | 100 |
|
101 | 101 | #define QOCISPATIAL_DYNAMIC_CHUNK_SIZE 65535
|
102 |
| -#define QOCISPATIAL_PREFETCH_MEM 10240 |
| 102 | +#define QOCISPATIAL_PREFETCH_ROWS 10000 |
| 103 | +#define QOCISPATIAL_PREFETCH_MEM 8388608 // 8MB |
103 | 104 |
|
104 | 105 | // setting this define will allow using a query from a different
|
105 | 106 | // thread than its database connection.
|
@@ -341,8 +342,8 @@ class QOCISpatialDriverPrivate : public QSqlDriverPrivate
|
341 | 342 | OCIError *err = nullptr;
|
342 | 343 | bool transaction = false;
|
343 | 344 | int serverVersion = -1;
|
344 |
| - ub4 prefetchRows = 0xffffffff; |
345 |
| - ub2 prefetchMem = QOCISPATIAL_PREFETCH_MEM; |
| 345 | + ub4 prefetchRows = QOCISPATIAL_PREFETCH_ROWS; |
| 346 | + ub4 prefetchMem = QOCISPATIAL_PREFETCH_MEM; |
346 | 347 | QString user;
|
347 | 348 |
|
348 | 349 | OCIType *geometryTDO = nullptr;
|
@@ -429,7 +430,7 @@ class QOCISpatialResultPrivate: public QSqlCachedResultPrivate
|
429 | 430 | QList<QOCISDOGeometryInd *> sdoind;
|
430 | 431 | bool transaction;
|
431 | 432 | int serverVersion;
|
432 |
| - int prefetchRows, prefetchMem; |
| 433 | + ub4 prefetchRows, prefetchMem; |
433 | 434 | OCIType *geometryTDO = nullptr;
|
434 | 435 | QOCISDOGeometryObj *geometryObj = nullptr;
|
435 | 436 | QOCISDOGeometryInd *geometryInd = nullptr;
|
@@ -3833,13 +3834,13 @@ static void qParseOpts( const QString &options, QOCISpatialDriverPrivate *d )
|
3833 | 3834 | {
|
3834 | 3835 | d->prefetchRows = val.toInt( &ok );
|
3835 | 3836 | if ( !ok )
|
3836 |
| - d->prefetchRows = 0xffffffff; |
| 3837 | + d->prefetchRows = QOCISPATIAL_PREFETCH_ROWS; |
3837 | 3838 | }
|
3838 | 3839 | else if ( opt == QLatin1String( "OCI_ATTR_PREFETCH_MEMORY" ) )
|
3839 | 3840 | {
|
3840 | 3841 | d->prefetchMem = val.toInt( &ok );
|
3841 | 3842 | if ( !ok )
|
3842 |
| - d->prefetchMem = 0xffff; |
| 3843 | + d->prefetchMem = QOCISPATIAL_PREFETCH_MEM; |
3843 | 3844 | }
|
3844 | 3845 | else
|
3845 | 3846 | {
|
|
0 commit comments