Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit dd47f03

Browse files
author
Alexandra Pervushina
committed
Change dbid type to uint64 for alignment
1 parent a3cbc10 commit dd47f03

File tree

3 files changed

+32
-39
lines changed

3 files changed

+32
-39
lines changed

aqo_shared.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,6 @@ aqo_init_shmem(void)
6161
}
6262

6363
info.keysize = sizeof(stat_key);
64-
elog(LOG, "keysize %ld", info.keysize);
6564
info.entrysize = sizeof(StatEntry);
6665
stat_htab = ShmemInitHash("AQO Stat HTAB", fs_max_items, fs_max_items,
6766
&info, HASH_ELEM | HASH_BLOBS);

storage.c

Lines changed: 28 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ bool
210210
query_is_deactivated(uint64 queryid)
211211
{
212212
bool found;
213-
queries_key key = {.queryid = queryid, .dbid = MyDatabaseId};
213+
queries_key key = {.queryid = queryid, .dbid = (uint64) MyDatabaseId};
214214

215215

216216
(void) hash_search(deactivated_queries, &key, HASH_FIND, &found);
@@ -221,7 +221,7 @@ query_is_deactivated(uint64 queryid)
221221
void
222222
add_deactivated_query(uint64 queryid)
223223
{
224-
queries_key key = {.queryid = queryid, .dbid = MyDatabaseId};
224+
queries_key key = {.queryid = queryid, .dbid = (uint64) MyDatabaseId};
225225
(void) hash_search(deactivated_queries, &key, HASH_ENTER, NULL);
226226
}
227227

@@ -255,7 +255,7 @@ aqo_stat_store(uint64 queryid, bool use_aqo, AqoStatArgs *stat_arg,
255255
bool append_mode)
256256
{
257257
StatEntry *entry;
258-
queries_key key = {.queryid = queryid, .dbid = MyDatabaseId};
258+
queries_key key = {.queryid = queryid, .dbid = (uint64) MyDatabaseId};
259259
bool found;
260260
int pos;
261261
bool tblOverflow;
@@ -290,7 +290,7 @@ aqo_stat_store(uint64 queryid, bool use_aqo, AqoStatArgs *stat_arg,
290290
qid = entry->key.queryid;
291291
memset(entry, 0, sizeof(StatEntry));
292292
entry->key.queryid = qid;
293-
entry->key.dbid = MyDatabaseId;
293+
entry->key.dbid = (uint64) MyDatabaseId;
294294
}
295295

296296
if (!append_mode)
@@ -300,7 +300,7 @@ aqo_stat_store(uint64 queryid, bool use_aqo, AqoStatArgs *stat_arg,
300300
{
301301
memset(entry, 0, sizeof(StatEntry));
302302
entry->key.queryid = queryid;
303-
entry->key.dbid = MyDatabaseId;
303+
entry->key.dbid = (uint64) MyDatabaseId;
304304
}
305305

306306
sz = stat_arg->cur_stat_slot_aqo * sizeof(entry->est_error_aqo[0]);
@@ -369,7 +369,6 @@ aqo_stat_store(uint64 queryid, bool use_aqo, AqoStatArgs *stat_arg,
369369

370370
entry = memcpy(palloc(sizeof(StatEntry)), entry, sizeof(StatEntry));
371371
aqo_state->stat_changed = true;
372-
elog(NOTICE, "aqo stat store queryid %lu dbid %d", key.queryid, key.dbid);
373372

374373
LWLockRelease(&aqo_state->stat_lock);
375374
return entry;
@@ -424,7 +423,7 @@ aqo_query_stat(PG_FUNCTION_ARGS)
424423
hash_seq_init(&hash_seq, stat_htab);
425424
while ((entry = hash_seq_search(&hash_seq)) != NULL)
426425
{
427-
if (entry->key.dbid != MyDatabaseId)
426+
if (entry->key.dbid != (uint64) MyDatabaseId)
428427
continue;
429428

430429
values[QUERYID] = Int64GetDatum(entry->key.queryid);
@@ -460,10 +459,6 @@ aqo_stat_reset(Oid dbid)
460459
if (dbid != InvalidOid && entry->key.dbid != dbid)
461460
continue;
462461

463-
bool found;
464-
hash_search(stat_htab, &entry->key, HASH_FIND, &found);
465-
elog(NOTICE, "%d size %ld", found, sizeof(entry->key));
466-
467462
if (!hash_search(stat_htab, &entry->key, HASH_REMOVE, NULL))
468463
elog(PANIC, "[AQO] hash table corrupted");
469464
num_remove++;
@@ -813,7 +808,7 @@ _deform_qtexts_record_cb(void *data, size_t size)
813808
void
814809
aqo_qtexts_load(void)
815810
{
816-
qtext_key key = {.queryid = 0, .dbid = MyDatabaseId};
811+
qtext_key key = {.queryid = 0, .dbid = (uint64) MyDatabaseId};
817812
bool found;
818813

819814
Assert(!LWLockHeldByMe(&aqo_state->qtexts_lock));
@@ -932,7 +927,7 @@ void
932927
aqo_queries_load(void)
933928
{
934929
bool found;
935-
queries_key key = {.queryid = 0, .dbid = MyDatabaseId};
930+
queries_key key = {.queryid = 0, .dbid = (uint64) MyDatabaseId};
936931

937932
Assert(!LWLockHeldByMe(&aqo_state->queries_lock));
938933

@@ -1093,7 +1088,7 @@ aqo_qtext_store(uint64 queryid, const char *query_string)
10931088
bool found;
10941089
bool tblOverflow;
10951090
HASHACTION action;
1096-
qtext_key key = {.queryid = queryid, .dbid = MyDatabaseId};
1091+
qtext_key key = {.queryid = queryid, .dbid = (uint64) MyDatabaseId};
10971092

10981093
Assert(!LWLockHeldByMe(&aqo_state->qtexts_lock));
10991094

@@ -1132,7 +1127,7 @@ aqo_qtext_store(uint64 queryid, const char *query_string)
11321127
}
11331128

11341129
entry->key.queryid = queryid;
1135-
entry->key.dbid = MyDatabaseId;
1130+
entry->key.dbid = (uint64) MyDatabaseId;
11361131
size = size > querytext_max_size ? querytext_max_size : size;
11371132
entry->qtext_dp = dsa_allocate0(qtext_dsa, size);
11381133

@@ -1206,7 +1201,7 @@ aqo_query_texts(PG_FUNCTION_ARGS)
12061201
{
12071202
char *ptr;
12081203

1209-
if (entry->key.dbid != MyDatabaseId)
1204+
if (entry->key.dbid != (uint64) (uint64) MyDatabaseId)
12101205
continue;
12111206

12121207
Assert(DsaPointerIsValid(entry->qtext_dp));
@@ -1225,7 +1220,7 @@ static bool
12251220
_aqo_stat_remove(uint64 queryid)
12261221
{
12271222
bool found;
1228-
stat_key key = {.queryid = queryid, .dbid = MyDatabaseId};
1223+
stat_key key = {.queryid = queryid, .dbid = (uint64) (uint64) MyDatabaseId};
12291224

12301225
Assert(!LWLockHeldByMe(&aqo_state->stat_lock));
12311226
LWLockAcquire(&aqo_state->stat_lock, LW_EXCLUSIVE);
@@ -1245,7 +1240,7 @@ static bool
12451240
_aqo_queries_remove(uint64 queryid)
12461241
{
12471242
bool found;
1248-
queries_key key = {.queryid = queryid, .dbid = MyDatabaseId};
1243+
queries_key key = {.queryid = queryid, .dbid = (uint64) (uint64) MyDatabaseId};
12491244

12501245

12511246
Assert(!LWLockHeldByMe(&aqo_state->queries_lock));
@@ -1267,7 +1262,7 @@ _aqo_qtexts_remove(uint64 queryid)
12671262
{
12681263
bool found = false;
12691264
QueryTextEntry *entry;
1270-
qtext_key key = {.queryid = queryid, .dbid = MyDatabaseId};
1265+
qtext_key key = {.queryid = queryid, .dbid = (uint64) (uint64) MyDatabaseId};
12711266

12721267
dsa_init();
12731268

@@ -1381,7 +1376,7 @@ aqo_data_store(uint64 fs, int fss, AqoDataArgs *data, List *reloids)
13811376
{
13821377
DataEntry *entry;
13831378
bool found;
1384-
data_key key = {.fs = fs, .fss = fss, .dbid = MyDatabaseId};
1379+
data_key key = {.fs = fs, .fss = fss, .dbid = (uint64) (uint64) MyDatabaseId};
13851380
int i;
13861381
char *ptr;
13871382
ListCell *lc;
@@ -1400,7 +1395,6 @@ aqo_data_store(uint64 fs, int fss, AqoDataArgs *data, List *reloids)
14001395
Assert(!LWLockHeldByMe(&aqo_state->data_lock));
14011396
Assert(data->rows > 0);
14021397

1403-
elog(NOTICE, "aqo data store fs %lu fss %lu dbid %d", key.fs, key.fss, key.dbid);
14041398
dsa_init();
14051399

14061400
LWLockAcquire(&aqo_state->data_lock, LW_EXCLUSIVE);
@@ -1672,7 +1666,7 @@ bool
16721666
aqo_data_exist(uint64 fs, int fss)
16731667
{
16741668
bool found;
1675-
data_key key = {.fs = fs, .fss = fss, .dbid = MyDatabaseId};
1669+
data_key key = {.fs = fs, .fss = fss, .dbid = (uint64) MyDatabaseId};
16761670

16771671
dsa_init();
16781672

@@ -1698,7 +1692,7 @@ load_aqo_data(uint64 fs, int fss, OkNNrdata *data, List **reloids,
16981692
{
16991693
DataEntry *entry;
17001694
bool found;
1701-
data_key key = {.fs = fs, .fss = fss, .dbid = MyDatabaseId};
1695+
data_key key = {.fs = fs, .fss = fss, .dbid = (uint64) MyDatabaseId};
17021696
OkNNrdata *temp_data;
17031697

17041698
Assert(!LWLockHeldByMe(&aqo_state->data_lock));
@@ -1833,7 +1827,7 @@ aqo_data(PG_FUNCTION_ARGS)
18331827
{
18341828
char *ptr;
18351829

1836-
if (entry->key.dbid != MyDatabaseId)
1830+
if (entry->key.dbid != (uint64) MyDatabaseId)
18371831
continue;
18381832

18391833
memset(nulls, 0, AD_TOTAL_NCOLS);
@@ -1901,7 +1895,7 @@ _aqo_data_clean(uint64 fs)
19011895
hash_seq_init(&hash_seq, data_htab);
19021896
while ((entry = hash_seq_search(&hash_seq)) != NULL)
19031897
{
1904-
if (entry->key.fs != fs || entry->key.dbid != MyDatabaseId)
1898+
if (entry->key.fs != fs || entry->key.dbid != (uint64) MyDatabaseId)
19051899
continue;
19061900

19071901
Assert(DsaPointerIsValid(entry->data_dp));
@@ -2000,7 +1994,7 @@ aqo_queries(PG_FUNCTION_ARGS)
20001994
hash_seq_init(&hash_seq, queries_htab);
20011995
while ((entry = hash_seq_search(&hash_seq)) != NULL)
20021996
{
2003-
if (entry->key.dbid != MyDatabaseId)
1997+
if (entry->key.dbid != (uint64) MyDatabaseId)
20041998
continue;
20051999

20062000
values[AQ_QUERYID] = Int64GetDatum(entry->key.queryid);
@@ -2027,7 +2021,7 @@ aqo_queries_store(uint64 queryid,
20272021
bool found;
20282022
bool tblOverflow;
20292023
HASHACTION action;
2030-
queries_key key = {.queryid = queryid, .dbid = MyDatabaseId};
2024+
queries_key key = {.queryid = queryid, .dbid = (uint64) MyDatabaseId};
20312025

20322026
/* Insert is allowed if no args are NULL. */
20332027
bool safe_insert =
@@ -2135,7 +2129,7 @@ aqo_enable_query(PG_FUNCTION_ARGS)
21352129
uint64 queryid = (uint64) PG_GETARG_INT64(0);
21362130
QueriesEntry *entry;
21372131
bool found;
2138-
queries_key key = {.queryid = queryid, .dbid = MyDatabaseId};
2132+
queries_key key = {.queryid = queryid, .dbid = (uint64) MyDatabaseId};
21392133

21402134
Assert(queries_htab);
21412135

@@ -2167,7 +2161,7 @@ aqo_disable_query(PG_FUNCTION_ARGS)
21672161
uint64 queryid = (uint64) PG_GETARG_INT64(0);
21682162
QueriesEntry *entry;
21692163
bool found;
2170-
queries_key key = {.queryid = queryid, .dbid = MyDatabaseId};
2164+
queries_key key = {.queryid = queryid, .dbid = (uint64) MyDatabaseId};
21712165

21722166
Assert(queries_htab);
21732167

@@ -2194,7 +2188,7 @@ aqo_queries_find(uint64 queryid, QueryContextData *ctx)
21942188
{
21952189
bool found;
21962190
QueriesEntry *entry;
2197-
queries_key key = {.queryid = queryid, .dbid = MyDatabaseId};
2191+
queries_key key = {.queryid = queryid, .dbid = (uint64) MyDatabaseId};
21982192

21992193
Assert(queries_htab);
22002194

@@ -2224,7 +2218,7 @@ update_query_timeout(uint64 queryid, int64 smart_timeout)
22242218
bool found;
22252219
bool tblOverflow;
22262220
HASHACTION action;
2227-
queries_key key = {.queryid = queryid, .dbid = MyDatabaseId};
2221+
queries_key key = {.queryid = queryid, .dbid = (uint64) MyDatabaseId};
22282222

22292223
Assert(queries_htab);
22302224

@@ -2304,7 +2298,7 @@ aqo_reset(PG_FUNCTION_ARGS)
23042298
{
23052299
long counter = 0;
23062300

2307-
Oid dbid = MyDatabaseId;
2301+
Oid dbid = (uint64) MyDatabaseId;
23082302
if (PG_NARGS() > 0)
23092303
dbid = PG_GETARG_OID(0);
23102304

@@ -2357,7 +2351,7 @@ cleanup_aqo_database(bool gentle, int *fs_num, int *fss_num)
23572351
List *actual_fss = NIL;
23582352
ListCell *lc;
23592353

2360-
if (entry->key.dbid != MyDatabaseId)
2354+
if (entry->key.dbid != (uint64) MyDatabaseId)
23612355
continue;
23622356

23632357
/* Scan aqo_data for any junk records related to this FS */
@@ -2502,7 +2496,7 @@ aqo_drop_class(PG_FUNCTION_ARGS)
25022496
QueriesEntry *entry;
25032497
uint64 fs;
25042498
long cnt;
2505-
queries_key key = {.queryid = queryid, .dbid = MyDatabaseId};
2499+
queries_key key = {.queryid = queryid, .dbid = (uint64) MyDatabaseId};
25062500

25072501
if (queryid == 0)
25082502
elog(ERROR, "[AQO] Cannot remove basic class "INT64_FORMAT".",

storage.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
typedef struct stat_key
1414
{
1515
uint64 queryid;
16-
Oid dbid;
16+
uint64 dbid;
1717
} stat_key;
1818

1919
/*
@@ -65,7 +65,7 @@ typedef struct AqoStatArgs
6565
typedef struct qtext_key
6666
{
6767
uint64 queryid;
68-
Oid dbid;
68+
uint64 dbid;
6969
} qtext_key;
7070

7171
/*aqo_qtexts_reset
@@ -85,7 +85,7 @@ typedef struct data_key
8585
{
8686
uint64 fs;
8787
int64 fss; /* just for alignment */
88-
Oid dbid;
88+
uint64 dbid;
8989
} data_key;
9090

9191
typedef struct DataEntry
@@ -108,7 +108,7 @@ typedef struct DataEntry
108108
typedef struct queries_key
109109
{
110110
uint64 queryid;
111-
Oid dbid;
111+
uint64 dbid;
112112
} queries_key;
113113

114114
typedef struct QueriesEntry

0 commit comments

Comments
 (0)