|
|
@ -35,17 +35,16 @@ BEGIN
|
|
|
|
|
|
|
|
|
|
|
|
IF dice < pbfact THEN
|
|
|
|
IF dice < pbfact THEN
|
|
|
|
RAISE DEBUG 'Checking quota on table % (dice:%, needed:<%)', TG_RELID::text, dice, pbfact;
|
|
|
|
RAISE DEBUG 'Checking quota on table % (dice:%, needed:<%)', TG_RELID::text, dice, pbfact;
|
|
|
|
IF TG_NARGS > 1 THEN
|
|
|
|
BEGIN
|
|
|
|
RAISE NOTICE 'Using quota specified via trigger parameter';
|
|
|
|
qmax := public._CDB_UserQuotaInBytes();
|
|
|
|
qmax := TG_ARGV[1];
|
|
|
|
EXCEPTION WHEN undefined_function THEN
|
|
|
|
ELSE
|
|
|
|
IF TG_NARGS > 1 THEN
|
|
|
|
BEGIN
|
|
|
|
RAISE NOTICE 'Using quota specified via trigger parameter';
|
|
|
|
qmax := public._CDB_UserQuotaInBytes();
|
|
|
|
qmax := TG_ARGV[1];
|
|
|
|
EXCEPTION WHEN undefined_function THEN
|
|
|
|
ELSE
|
|
|
|
RAISE WARNING 'Missing _CDB_UserQuotaInBytes(), assuming no quota';
|
|
|
|
RAISE EXCEPTION 'Missing _CDB_UserQuotaInBytes(), and no quota provided as parameter';
|
|
|
|
qmax := 0;
|
|
|
|
END IF;
|
|
|
|
END;
|
|
|
|
END;
|
|
|
|
END IF;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
IF qmax = 0 THEN
|
|
|
|
IF qmax = 0 THEN
|
|
|
|
RETURN NEW;
|
|
|
|
RETURN NEW;
|
|
|
|