mirror of
https://github.com/ElvishArtisan/rivendell.git
synced 2025-04-14 08:39:31 +02:00
2018-07-17 Fred Gleason <fredg@paravelsystems.com>
* Cleaned up SQL quieries in 'rdrepld/' to ensure UTF-8 compatibility.
This commit is contained in:
parent
cbec82b0d4
commit
6e2b2a7e0b
@ -17158,3 +17158,6 @@
|
||||
2018-07-17 Fred Gleason <fredg@paravelsystems.com>
|
||||
* Cleaned up SQL quieries in 'rdlogmanager/' to ensure UTF-8
|
||||
compatibility.
|
||||
2018-07-17 Fred Gleason <fredg@paravelsystems.com>
|
||||
* Cleaned up SQL quieries in 'rdrepld/' to ensure UTF-8
|
||||
compatibility.
|
||||
|
@ -264,55 +264,41 @@ void CitadelXds::CheckCarts()
|
||||
where (LATEST_DATE>=now())&&((TYPE=\"R\")||(TYPE=\"B\"))";
|
||||
q=new RDSqlQuery(sql);
|
||||
while(q->next()) {
|
||||
sql=QString().sprintf("select REPL_CART_STATE.ID from \
|
||||
REPL_CART_STATE left join CUTS \
|
||||
on REPL_CART_STATE.CART_NUMBER=CUTS.CART_NUMBER \
|
||||
where (CUTS.ORIGIN_DATETIME<REPL_CART_STATE.ITEM_DATETIME)&&\
|
||||
(REPL_CART_STATE.REPLICATOR_NAME=\"%s\")&&\
|
||||
(REPL_CART_STATE.CART_NUMBER=%u)&&\
|
||||
(REPL_CART_STATE.POSTED_FILENAME=\"%s\")&&\
|
||||
(REPL_CART_STATE.ITEM_DATETIME>\"%s\")&&\
|
||||
(REPL_CART_STATE.REPOST=\"N\")",
|
||||
(const char *)RDEscapeString(config()->name()),
|
||||
q->value(0).toUInt(),
|
||||
(const char *)RDEscapeString(q->value(1).toString()),
|
||||
(const char *)now);
|
||||
sql=QString("select REPL_CART_STATE.ID from ")+
|
||||
"REPL_CART_STATE left join CUTS "+
|
||||
"on REPL_CART_STATE.CART_NUMBER=CUTS.CART_NUMBER where "+
|
||||
"(CUTS.ORIGIN_DATETIME<REPL_CART_STATE.ITEM_DATETIME)&&"+
|
||||
"(REPL_CART_STATE.REPLICATOR_NAME=\""+
|
||||
RDEscapeString(config()->name())+"\")&&"+
|
||||
QString().sprintf("(REPL_CART_STATE.CART_NUMBER=%u)&&",q->value(0).toUInt())+
|
||||
"(REPL_CART_STATE.POSTED_FILENAME=\""+
|
||||
RDEscapeString(q->value(1).toString())+"\")&&"+
|
||||
"(REPL_CART_STATE.ITEM_DATETIME>\""+RDEscapeString(now)+"\")&&"+
|
||||
"(REPL_CART_STATE.REPOST=\"N\")";
|
||||
q1=new RDSqlQuery(sql);
|
||||
if(!q1->first()) {
|
||||
if(PostCut(RDCut::cutName(q->value(0).toUInt(),1),
|
||||
q->value(1).toString())) {
|
||||
sql=QString().sprintf("select ID from REPL_CART_STATE where \
|
||||
(REPLICATOR_NAME=\"%s\")&&\
|
||||
(CART_NUMBER=%u)&&\
|
||||
(POSTED_FILENAME=\"%s\")",
|
||||
(const char *)RDEscapeString(config()->name()),
|
||||
q->value(0).toUInt(),
|
||||
(const char *)RDEscapeString(q->value(1).
|
||||
toString()));
|
||||
sql=QString("select ID from REPL_CART_STATE where ")+
|
||||
"(REPLICATOR_NAME=\""+RDEscapeString(config()->name())+"\")&&"+
|
||||
QString().sprintf("(CART_NUMBER=%u)&&",q->value(0).toUInt())+
|
||||
"(POSTED_FILENAME=\""+RDEscapeString(q->value(1).toString())+"\")";
|
||||
q2=new RDSqlQuery(sql);
|
||||
if(q2->first()) {
|
||||
sql=QString().sprintf("update REPL_CART_STATE set\
|
||||
ITEM_DATETIME=now(),\
|
||||
REPOST=\"N\" where \
|
||||
(REPLICATOR_NAME=\"%s\")&&\
|
||||
(CART_NUMBER=%u)&&\
|
||||
(POSTED_FILENAME=\"%s\")",
|
||||
(const char *)RDEscapeString(config()->name()),
|
||||
q->value(0).toUInt(),
|
||||
(const char *)RDEscapeString(q->value(1).
|
||||
toString()));
|
||||
sql=QString("update REPL_CART_STATE set ")+
|
||||
"ITEM_DATETIME=now(),"+
|
||||
"REPOST=\"N\" where "+
|
||||
"(REPLICATOR_NAME=\""+RDEscapeString(config()->name())+"\")&&"+
|
||||
QString().sprintf("(CART_NUMBER=%u)&&",q->value(0).toUInt())+
|
||||
"(POSTED_FILENAME=\""+RDEscapeString(q->value(1).toString())+"\")";
|
||||
}
|
||||
else {
|
||||
sql=QString().sprintf("insert into REPL_CART_STATE set \
|
||||
ITEM_DATETIME=now(),\
|
||||
REPOST=\"N\",\
|
||||
REPLICATOR_NAME=\"%s\",\
|
||||
CART_NUMBER=%u,\
|
||||
POSTED_FILENAME=\"%s\"",
|
||||
(const char *)RDEscapeString(config()->name()),
|
||||
q->value(0).toUInt(),
|
||||
(const char *)RDEscapeString(q->value(1).
|
||||
toString()));
|
||||
sql=QString("insert into REPL_CART_STATE set ")+
|
||||
"ITEM_DATETIME=now(),"+
|
||||
"REPOST=\"N\","+
|
||||
"REPLICATOR_NAME=\""+RDEscapeString(config()->name())+"\","+
|
||||
QString().sprintf("CART_NUMBER=%u,",q->value(0).toUInt())+
|
||||
"POSTED_FILENAME=\""+RDEscapeString(q->value(1).toString())+"\"";
|
||||
}
|
||||
delete q2;
|
||||
q2=new RDSqlQuery(sql);
|
||||
@ -419,14 +405,15 @@ void CitadelXds::PurgeCuts()
|
||||
RDDelete *conv;
|
||||
RDDelete::ErrorCode conv_err;
|
||||
|
||||
sql=QString().sprintf("select ID,POSTED_FILENAME from REPL_CART_STATE \
|
||||
where REPLICATOR_NAME=\"%s\"",
|
||||
(const char *)RDEscapeString(config()->name()));
|
||||
sql=QString("select ")+
|
||||
"ID,"+ // 00
|
||||
"POSTED_FILENAME "+ // 01
|
||||
"from REPL_CART_STATE where "+
|
||||
"REPLICATOR_NAME=\""+RDEscapeString(config()->name())+"\"";
|
||||
q=new RDSqlQuery(sql);
|
||||
while(q->next()) {
|
||||
sql=QString().
|
||||
sprintf("select ID from ISCI_XREFERENCE where FILENAME=\"%s\"",
|
||||
(const char *)RDEscapeString(q->value(1).toString()));
|
||||
sql=QString("select ID from ISCI_XREFERENCE where ")+
|
||||
"FILENAME=\""+RDEscapeString(q->value(1).toString())+"\"";
|
||||
q1=new RDSqlQuery(sql);
|
||||
if(!q1->first()) {
|
||||
QString path=config()->url();
|
||||
|
@ -163,28 +163,29 @@ void MainObject::ProcessCarts()
|
||||
for(unsigned i=0;i<repl_replicators.size();i++) {
|
||||
where="";
|
||||
repl_name=repl_replicators[i]->config()->name();
|
||||
sql=QString().
|
||||
sprintf("select GROUP_NAME from REPLICATOR_MAP \
|
||||
where REPLICATOR_NAME=\"%s\"",
|
||||
(const char *)RDEscapeString(repl_name));
|
||||
sql=QString("select GROUP_NAME from REPLICATOR_MAP where ")+
|
||||
"REPLICATOR_NAME=\""+RDEscapeString(repl_name)+"\"";
|
||||
q=new RDSqlQuery(sql);
|
||||
while(q->next()) {
|
||||
where+=QString().
|
||||
sprintf("(GROUP_NAME=\"%s\")||",
|
||||
(const char *)RDEscapeString(q->value(0).toString()));
|
||||
where+=QString("(GROUP_NAME=\"")+
|
||||
RDEscapeString(q->value(0).toString())+"\")||";
|
||||
}
|
||||
delete q;
|
||||
where=where.left(where.length()-2);
|
||||
sql=QString().sprintf("select NUMBER,TYPE,METADATA_DATETIME \
|
||||
from CART where %s",
|
||||
(const char *)where);
|
||||
sql=QString("select ")+
|
||||
"NUMBER,"+ // 00
|
||||
"TYPE,"+ // 01
|
||||
"METADATA_DATETIME "+ // 02
|
||||
"from CART where "+
|
||||
where;
|
||||
q=new RDSqlQuery(sql);
|
||||
while(q->next()) {
|
||||
sql=QString().sprintf("select ID,ITEM_DATETIME from REPL_CART_STATE \
|
||||
where (REPLICATOR_NAME=\"%s\")&&\
|
||||
(CART_NUMBER=%u)",
|
||||
(const char *)RDEscapeString(repl_name),
|
||||
q->value(0).toUInt());
|
||||
sql=QString("select ")+
|
||||
"ID,"+ // 00
|
||||
"ITEM_DATETIME "+ // 01
|
||||
"from REPL_CART_STATE where "+
|
||||
"(REPLICATOR_NAME=\""+RDEscapeString(repl_name)+"\")&&"+
|
||||
QString().sprintf("(CART_NUMBER=%u)",q->value(0).toUInt());
|
||||
q1=new RDSqlQuery(sql);
|
||||
if(q1->first()) {
|
||||
stale=q->value(2).toDateTime()>q1->value(1).toDateTime();
|
||||
@ -195,17 +196,15 @@ void MainObject::ProcessCarts()
|
||||
if(stale) {
|
||||
if(repl_replicators[i]->processCart(q->value(0).toUInt())) {
|
||||
if(q1->isValid()) {
|
||||
sql=QString().sprintf("update REPL_CART_STATE set \
|
||||
ITEM_DATETIME=now() where ID=%u",
|
||||
q1->value(0).toUInt());
|
||||
sql=QString("update REPL_CART_STATE set ")+
|
||||
"ITEM_DATETIME=now() where "+
|
||||
QString().sprintf("ID=%u",q1->value(0).toUInt());
|
||||
}
|
||||
else {
|
||||
sql=QString().sprintf("insert into REPL_CART_STATE set \
|
||||
REPLICATOR_NAME=\"%s\",\
|
||||
CART_NUMBER=%u,\
|
||||
ITEM_DATETIME=now()",
|
||||
(const char *)RDEscapeString(repl_name),
|
||||
q->value(0).toUInt());
|
||||
sql=QString("insert into REPL_CART_STATE set ")+
|
||||
"REPLICATOR_NAME=\""+RDEscapeString(repl_name)+"\","+
|
||||
QString().sprintf("CART_NUMBER=%u,",q->value(0).toUInt())+
|
||||
"ITEM_DATETIME=now()";
|
||||
}
|
||||
q2=new RDSqlQuery(sql);
|
||||
delete q2;
|
||||
|
Loading…
x
Reference in New Issue
Block a user