ACBS7C6QGXAMPLQ336WAQMMGLZXBDNNYPE26ZBPUQ24GL4BF643AC IK2UBDAU6QKUXHJG3SXJKYGIIXRDKI6UVRTFC6ZVDXDCGNCMEWVAC WE5Q2NVIIK4R2DUUZYLJFQVYK5O26EDEJRPK3CPGWHU3SEAC2DQAC MHVIT4JYWUYD4UCGB2AHLXWLX6B5SYE22BREERNGANT7RGGDUFOAC HJOEIMLRDVQ2KZI5HGL2HKGBM3AHP7YIKGKDAGFUNKRUXVRB24NAC SS4TZXNUWXSEJC3XYHGVS3IBZ2D7GPIPELODVQOHRRGYADI2L72AC KN3VYE5P2RJB3KZ355LA5C2T2D5S2IR3QZFE53AJIWUVMETEEYDAC N22GPKYTOLZLBGTGDATQDVZ4R5APZEAOIA7L32X4UXBH4XNI7MWAC BXHG3HYLCKXL35S2MCIBTXTP6UO55NASYE7XCLQP4PXPSVDMUIAQC D5QIOJGPKQJIYBUCSC3MFJ3TXLPNZ2XMI37GXMFRVRFWWR2VMTFAC void State::processJobsetSharesChange(Connection & conn){/* Get the current set of jobsets. */pqxx::work txn(conn);auto res = txn.exec("select project, name, schedulingShares from Jobsets");for (auto const & row : res) {auto jobsets_(jobsets.lock());auto i = jobsets_->find(std::make_pair(row["project"].as<string>(), row["name"].as<string>()));if (i == jobsets_->end()) continue;i->second->setShares(row["schedulingShares"].as<unsigned int>());}}
create function notifyJobsetSharesChanged() returns trigger as 'begin notify jobset_shares_changed; return null; end;' language plpgsql;create trigger JobsetSharesChanged after update on Jobsets for each rowwhen (old.schedulingShares != new.schedulingShares) execute procedure notifyJobsetSharesChanged();#endif
create function notifyJobsetSharesChanged() returns trigger as 'begin notify jobset_shares_changed; return null; end;' language plpgsql;create trigger JobsetSharesChanged after update on Jobsets for each rowwhen (old.schedulingShares != new.schedulingShares) execute procedure notifyJobsetSharesChanged();alter table Jobsets add constraint jobsets_check check (schedulingShares > 0);