Opened 5 years ago

Closed 5 years ago

Last modified 5 years ago

#717 closed task (fixed)

Auto-confirmation service

Reported by: Nicklas Nordborg Owned by: Nicklas Nordborg
Priority: critical Milestone: Reggie v3.0
Component: net.sf.basedb.reggie Keywords:
Cc:

Description

For the secondary analysis we should implement an auto-confirmation service. This should monitor the progress of secondary analysis jobs and if the outcome is successful and within a required set of parameters the result should automatically be confirmed and the next step be started.

The demux step is always started manually and it should be possible to select if the auto-confirmation should be enabled or not (can we use the AutoProcessing annotation?)

Results that doesn't pass the auto-confirmation rules should be left for manual confirmation. If the operator decides to confirm and continue it should once again be possible to enable auto-confirmation (eg. all secondary analysis wizards should have this feature).

Besides the implicit rule that the job must finish successfully, the following rules should apply:

Rules for the demux step:

  • No DemuxWarnings on the sequencing run items
  • All libraries must get PT_READS > 10M
  • All libraries must have valid FragmentSizeAvg and FragmentSizeStdev values

Rules for the align step:

  • ALIGNED_PAIRS >= 5M (confirm and continue)
  • ALIGNED_PAIRS >= 1M (confirm, flag RNA and continue)
  • ALIGNED_PAIRS < 1M (confirm, flag RNA and stop)

Rules for the Cufflinks step:

  • No extra rules.

Change History (13)

comment:1 Changed 5 years ago by Nicklas Nordborg

(In [3029]) References #717: Auto-confirmation service

Added "Auto-confirm" checkbox to the secondary analysis wizards. It will set AutoProcessing annotation to AutoConfirm on the items it applies to.

comment:2 Changed 5 years ago by Nicklas Nordborg

(In [3032]) References #717: Auto-confirmation service

Added AutoConfirmService that is checking the database at regular intervals for items with AutoProcessing==AutoConfirm. The current implementation will only reset the flag returning the items to normal flow.

The normal flow has been updated to ignore items marked for auto-confirmation so that they are not registered twice.

comment:3 Changed 5 years ago by Nicklas Nordborg

(In [3033]) References #717: Auto-confirmation service

Refactor session control handling so that there is a common session control for all Reggie services. The session control also has the SCAN-B project enabled by default.

comment:4 Changed 5 years ago by Nicklas Nordborg

(In [3034]) References #717: Auto-confirmation service

Stared to implement actual processing of auto-confirmation. Main work is to be done in AutoConfirmer and it's subclasses (one for each type of auto-confirmation).

So far the rule checking is implemented. Everything that doesn't passes the rules is handled by resetting the AutoProcessing flag and returning it to manual inspection.

Actual auto-confirmation and more for items that pass the rules is not yet implemented.

comment:5 Changed 5 years ago by Nicklas Nordborg

Status: newassigned

comment:6 Changed 5 years ago by Nicklas Nordborg

(In [3049]) References #717: Auto-confirmation service

Implemented the next step of auto-confirmation. The jobs should now be checked and left either for manual confirmation (if the rules are not met) or automatically confirmed. Starting the next step is not yet implemented.

comment:7 Changed 5 years ago by Nicklas Nordborg

(In [3051]) Fixes #722 and references #717.

Thanks to the new auto-confirmation service (#717) the case when a gene report job fails can be handled gracefully. The auto-confirmation service now includes a check for failed jobs and automatically removed the "temporary" link to the job and marks the raw bioassay with AutoProcessing=ReProcess.

comment:8 Changed 5 years ago by Nicklas Nordborg

(In [3055]) References #717: Auto-confirmation service

Added AutoConfirmer.startNextStep(). Implemented this for the cufflinks step, which means that the gene report should now be created automatically.

comment:9 Changed 5 years ago by Nicklas Nordborg

(In [3069]) References #717: Auto-confirmation service

Implemented AlignAutoConfirmer.startNextStep() which should start the Cufflinks step when the rules are met.

comment:10 Changed 5 years ago by Nicklas Nordborg

(In [3070]) References #717: Auto-confirmation service

Implemented DemuxAutoConfirmer.startNextStep() which should start the alignment step when the rules are met.

comment:11 Changed 5 years ago by Nicklas Nordborg

(In [3071]) References #717: Auto-confirmation service

Store priority and auto-confirm setting with the job so that it can be propagated to the next step in the auto-confirmation chain.

comment:12 Changed 5 years ago by Nicklas Nordborg

Resolution: fixed
Status: assignedclosed

comment:13 Changed 5 years ago by Nicklas Nordborg

(In [3072]) References #717: Auto-confirmation service

Added a comment to sessions created by auto-confirmation service to make it easier to see what each session has been used for.

Note: See TracTickets for help on using tickets.