RE: Can a database get stomped by simultaneous access?
This WebDNA talk-list message is from 1997
It keeps the original formatting.
numero = 13039
interpreted = N
texte = Curt -Yes, WebCatalog should always perform the database operations for that template completely before doing them again for another request, even if they come in at the same time; it's smart enough to prevent your databases from getting munged up for simultaneous requests.Are you seeing two entries for the same cart number despite the [HideIf] context?thanks,Marc EagleStarNine Technologieshttp://www.smithmicro.com/>We use a database to maintain an incremental counter we use as an invoice>order number with our webcat online orders, but we have had problems in>which every so often (we suspect it could be when we need to restart) we >get duplicate numbers for the counter in that database. The>ourDBs/Invoice_Counter_No.db contains just two fields [CART] and>[InvoiceNo] it started with a 0 value for a cart (which gets replaced by >the cart generated by webcat) and the desired invoice number we wish to>start from when we brought our online system up.>>Below is a sample code snippet of what we do:>>[CLOSEDATABASE ourDBs/Invoice_Counter_No.db]>[HideIf [lookup>db=OurDBs/Invoice_Counter_No.db&Value=[CART]&lookInField=CART&returnField=C>ART¬Found=0]=[CART]]>[Replace db=OurDBs/Inv_Receipt_No.db&eqCARTdata=0]CART=[CART][/Replace]>[Append db=OurDBs/Invoice_Counter_No.db]CART=0&InvoiceNo=[math][lookup>db=OurDBs/Invoice_Counter_No.db&Value=[CART]&lookInField=CART&returnFiel>d=InvoiceNo]+1[/math][/append][/Hideif]>>>The question is if we add a [closedatabase ourDBs/Invoice_Counter_No.db] >form after this operation could two customers simultaneously trying to>place an order stomp this database? Is webcat smart enough to keep a>database open if an operation is occurring on it even though another>customer may have hit the closedatabase form from another order?>>Curt
Associated Messages, from the most recent to the oldest:
Curt -Yes, WebCatalog should always perform the database operations for that template completely before doing them again for another request, even if they come in at the same time; it's smart enough to prevent your databases from getting munged up for simultaneous requests.Are you seeing two entries for the same cart number despite the
[hideif] context?thanks,Marc EagleStarNine Technologieshttp://www.smithmicro.com/>We use a database to maintain an incremental counter we use as an invoice>order number with our webcat online orders, but we have had problems in>which every so often (we suspect it could be when we need to restart) we >get duplicate numbers for the counter in that database. The>ourDBs/Invoice_Counter_No.db contains just two fields
[cart] and>[InvoiceNo] it started with a 0 value for a cart (which gets replaced by >the cart generated by webcat) and the desired invoice number we wish to>start from when we brought our online system up.>>Below is a sample code snippet of what we do:>>[CLOSEDATABASE ourDBs/Invoice_Counter_No.db]>[HideIf [lookup>db=OurDBs/Invoice_Counter_No.db&Value=
[cart]&lookInField=CART&returnField=C>ART¬Found=0]=
[cart]]>[Replace db=OurDBs/Inv_Receipt_No.db&eqCARTdata=0]CART=
[cart][/Replace]>[Append db=OurDBs/Invoice_Counter_No.db]CART=0&InvoiceNo=
[math][lookup>db=OurDBs/Invoice_Counter_No.db&Value=
[cart]&lookInField=CART&returnFiel>d=InvoiceNo]+1[/math][/append][/Hideif]>>>The question is if we add a [closedatabase ourDBs/Invoice_Counter_No.db] >form after this operation could two customers simultaneously trying to>place an order stomp this database? Is webcat smart enough to keep a>database open if an operation is occurring on it even though another>customer may have hit the closedatabase form from another order?>>Curt
Marc Eagle
DOWNLOAD WEBDNA NOW!
Top Articles:
Talk List
The WebDNA community talk-list is the best place to get some help: several hundred extremely proficient programmers with an excellent knowledge of WebDNA and an excellent spirit will deliver all the tips and tricks you can imagine...
Related Readings:
Setting up WebCatalog with Retail Pro data (1996)
2.0 Info (1997)
Freeze (2003)
Running _every_ page through WebCat ? (1997)
interesting (2003)
This list needs a digest: rant, rave... (1997)
Configuring E-mail (1997)
Searching multiple Databases (1997)
Grouping Fields in Context (1999)
No Wanna Duppys (1998)
Almost a there but..bye bye NetCloak (1997)
Can you do this??? and other stuff (1997)
New WebDNA patches available on the DRC (2004)
Shipcost update problem (1997)
4.51 Triggers (2003)
SetCookie / GetCookie Problem.... (2004)
webcat2b12 CGI -- Date comparisons (1997)
WebCat2b13MacPlugIn - [include] doesn't allow creator (1997)
How To question on setting up downloads (1997)
Grep all content between twp p tags (2006)