Opened 10 years ago

Closed 10 years ago

#211 closed porting (fixed)

"species information" window deletes GB_INT field

Reported by: epruesse Owned by: westram
Priority: blocker Milestone:
Component: ARB_NTREE Version: RC7 (arb_4.42)
Keywords: Cc:

Description

When overwriting a GB_INT field with an empty string from within the species information window the entry is removed from that species. This causes the window to throw an error message. Subsequent attempts to change the field cause an 'GB_INT signed 32bit out of range' error. (submitting bug for rc6, but it's also present for rc7)

Change History (6)

comment:1 Changed 10 years ago by epruesse

This can be reproduced with ssu-ref-98 and 100, but seems to work on smaller/older datasets.

comment:2 Changed 10 years ago by westram

  • Owner changed from devel to westram
  • Status changed from new to assigned

comment:3 Changed 10 years ago by westram

  • DB scanner tries to store a pointer in an INT awar. Since [5965] writing INTs returns an error if the value is outside 32-bit-integer-range. Here the error is not even recognized, but the value is not stored.
  • GB_write_int is planned to take int32_t instead of long, but the this was delayed to be implemented after release :|
  • AW_awar::write_int and AW_awar::rewrite_int need to expect int32_t instead of long as well
  • Special functions needed to store pointers in AWARs(!)/DBfields(?)

comment:4 Changed 10 years ago by westram

  • Priority changed from major to blocker
  • Version changed from RC6 (arb_4.41) to RC7 (arb_4.42)
  • Caution: This bug might make it impossible (and/or dangerous) to edit any DB-field located beyond the 2Gb border! Bug has been present in all previous 64bit versions.

comment:5 Changed 10 years ago by westram

  • Type changed from defect to need-backport

comment:6 Changed 10 years ago by westram

  • Resolution set to fixed
  • Status changed from assigned to closed

I've tested it with SSURef_100, valgrinded, double-checked changes, but nevertheless test b4 you use it in course!

Note: See TracTickets for help on using tickets.