← Back to team overview

credativ team mailing list archive

Re: [Bug 746620] Re: Implementation of faster gap-tolerant sequences

 

On 12/15/2011 12:50 PM, Ferdinand @ Camptocamp wrote:
> IMHO a main problem of gap-less  is not solved :
> 
> for some documents (SO,PO,PICK, ...) the number is generated pressing "New".
> Hence the number is "used" even if the user decides to abort / delete the document

"a main problem"?!

These kinds of document (SO, PO, ..) have specifically gap-tolerant
sequences, so gaps in there don't matter, by definition. Users aborting
after pressing new are treated similarly to users deleting a document
before confirming it: it creates a gap, and that is fine.

It looks like you're asking for keeping the gaps to a minimum in
gap-tolerant sequences. This is a nice-to-have (wishlist), and unrelated
to the current bug which deals with performance issue with most
sequences in high-contention environments.

The above is already taken care of for gap-less sequences (such as
Invoices numbering).


> workarounds
> * the number should only be assigned in the workflow from
> state draft to anything but cancel
> * prohibit deletion of numbered documents. not nice, but at least
> this would conform to accounting and audit standards.

Both of these are what happens for invoices, which is typically one of
the sequences which is meant to be totally gap-less.

Making this the default for all cases would be annoying users for no
reason. If a company needs a totally gap-less policy for managing SO or
PO numbering (don't think that's a majority) then they can customize the
system to that extent.

-- 
You received this bug notification because you are a member of OpenERP
Framework Experts, which is subscribed to OpenERP Server.
https://bugs.launchpad.net/bugs/746620

Title:
  Implementation of faster gap-tolerant sequences

Status in OpenERP Server:
  Fix Released

Bug description:
  OpenERP is classified as an Enterprise class software package. Meaning
  that more than one person, at least 2 should be able to use the system
  simultaneously. Like packers shipping products, taking orders,
  reserving products. I find that in fact, it is not possible for
  creation of stock moves simultaneously.

   Say I am importing orders from a shop. It is creating stock moves  because the order is paid. 
  At the same time I am shipping products which is normal for an ERP system.
  I might also import orders from a separate shop say a POS system.
  It is not possible!
  [2011-03-31 13:10:47,657][midwestsupplies] WARNING:stock.location:Failed attempt to reserve 1.0 x product 1669, li
  kely due to another transaction already in progress. Next attempt is likely to work. Detailed error available at D
  EBUG level.  
  OperationalError: could not obtain lock on row in relation "ir_sequence"
  Two different errors.
  I  can only perform one action at a time!
  What happens is that any time the program calls for a stock_move it will lock the stock_move table so no other process can access it which means that you cant do hardly anything unless its done individually. Now say with a MS system, or any Enterprise system would be able to handle many simultaneous actions but this program has a serious architecture flaw to not be able to support this.

To manage notifications about this bug go to:
https://bugs.launchpad.net/openobject-server/+bug/746620/+subscriptions


References