mirror of https://github.com/citusdata/citus.git
wip
parent
ad435ddba1
commit
48a9c9bb68
|
@ -164,7 +164,6 @@ CreateCimv(CimvCreate *cimvCreate)
|
||||||
CreateDataChangeTriggerFunction(cimvCreate);
|
CreateDataChangeTriggerFunction(cimvCreate);
|
||||||
CreateDataChangeTriggers(cimvCreate);
|
CreateDataChangeTriggers(cimvCreate);
|
||||||
InsertIntoPgCimv(cimvCreate->formCimv);
|
InsertIntoPgCimv(cimvCreate->formCimv);
|
||||||
|
|
||||||
PopCitusSecurityContext();
|
PopCitusSecurityContext();
|
||||||
|
|
||||||
if (SPI_finish() != SPI_OK_FINISH)
|
if (SPI_finish() != SPI_OK_FINISH)
|
||||||
|
|
|
@ -101,7 +101,6 @@ RefreshCimv(Form_pg_cimv formCimv, bool skipData, bool isCreate)
|
||||||
/* better: SPI_commit_and_chain(); */
|
/* better: SPI_commit_and_chain(); */
|
||||||
SPI_commit();
|
SPI_commit();
|
||||||
SPI_start_transaction();
|
SPI_start_transaction();
|
||||||
|
|
||||||
/* TODO: cleanup if this fails */
|
/* TODO: cleanup if this fails */
|
||||||
appendStringInfo(&querybuf,
|
appendStringInfo(&querybuf,
|
||||||
"INSERT INTO %s.%s "
|
"INSERT INTO %s.%s "
|
||||||
|
|
|
@ -479,7 +479,6 @@ multi_ProcessUtility(PlannedStmt *pstmt,
|
||||||
{
|
{
|
||||||
DropStmt *dropStatement = (DropStmt *) parsetree;
|
DropStmt *dropStatement = (DropStmt *) parsetree;
|
||||||
|
|
||||||
// PushCitusSecurityContext();
|
|
||||||
if (dropStatement->removeType == OBJECT_MATVIEW)
|
if (dropStatement->removeType == OBJECT_MATVIEW)
|
||||||
{
|
{
|
||||||
ProcessDropMaterializedViewStmt(dropStatement);
|
ProcessDropMaterializedViewStmt(dropStatement);
|
||||||
|
@ -488,7 +487,6 @@ multi_ProcessUtility(PlannedStmt *pstmt,
|
||||||
{
|
{
|
||||||
ProcessDropViewStmt(dropStatement);
|
ProcessDropViewStmt(dropStatement);
|
||||||
}
|
}
|
||||||
// PopCitusSecurityContext();
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -6,18 +6,21 @@
|
||||||
|
|
||||||
#include "distributed/sequence_utils.h"
|
#include "distributed/sequence_utils.h"
|
||||||
#include "distributed/coordinator_protocol.h"
|
#include "distributed/coordinator_protocol.h"
|
||||||
|
#include "distributed/security_utils.h"
|
||||||
|
|
||||||
#include "utils/builtins.h"
|
#include "utils/builtins.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
int UniqueId(void) {
|
int UniqueId(void) {
|
||||||
|
|
||||||
text *sequenceName = cstring_to_text(CITUS_UNIQUE_ID_SEQUENCE_NAME);
|
text *sequenceName = cstring_to_text(CITUS_UNIQUE_ID_SEQUENCE_NAME);
|
||||||
Oid sequenceId = ResolveRelationId(sequenceName, false);
|
Oid sequenceId = ResolveRelationId(sequenceName, false);
|
||||||
Datum sequenceIdDatum = ObjectIdGetDatum(sequenceId);
|
Datum sequenceIdDatum = ObjectIdGetDatum(sequenceId);
|
||||||
|
|
||||||
|
PushCitusSecurityContext();
|
||||||
Datum uniqueIdDatum = DirectFunctionCall1(nextval_oid, sequenceIdDatum);
|
Datum uniqueIdDatum = DirectFunctionCall1(nextval_oid, sequenceIdDatum);
|
||||||
|
PopCitusSecurityContext();
|
||||||
int uniqueId = DatumGetInt64(uniqueIdDatum);
|
int uniqueId = DatumGetInt64(uniqueIdDatum);
|
||||||
|
|
||||||
return uniqueId;
|
return uniqueId;
|
||||||
|
|
Loading…
Reference in New Issue