After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 165734 - Advanced Filter loop
Advanced Filter loop
Status: RESOLVED FIXED
Product: Gnumeric
Classification: Applications
Component: Analytics
git master
Other All
: High major
: ---
Assigned To: Jody Goldberg
Jody Goldberg
Depends on:
Blocks:
 
 
Reported: 2005-01-30 19:39 UTC by Andy Longton
Modified: 2005-05-14 22:01 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
A commented screenshot showing the spreadsheet and settings used (19.36 KB, image/png)
2005-01-30 19:45 UTC, Andy Longton
Details
Spreadsheet that replicates this problem under both Windows and Linux (5.51 KB, application/x-gnumeric)
2005-02-02 02:50 UTC, Andy Longton
Details
Screenshot of the previous spreadsheet just before running Advanced Filter (45.80 KB, image/png)
2005-02-02 02:58 UTC, Andy Longton
Details

Description Andy Longton 2005-01-30 19:39:10 UTC
1. Set up a column of data.
2. Create a single cell with a static value that appears also in the data column.
3. Create a criteria section.  
4. In one of the cells in the criteria section, reference the static value; =B2.
5. Select the data with the mouse and open Advanced Filter from Data menu.
6. Enter the criteria section in the dialog.
7. Choose Unique.
8. Select OK to run the filter.
9. CPU is pegged at 99%.

A screenshot will be attached for reference showing additional details.  Tested
under Microsoft Windows using 1.4.2-rc1 pre-built installation package.
Comment 1 Andy Longton 2005-01-30 19:45:57 UTC
Created attachment 36735 [details]
A commented screenshot showing the spreadsheet and settings used

All of the data in column D is 3 characters wide, English alpha only (not
numeric), and was pasted from an Access database table as UTF8.  No fields are
blank.	I let the calculation run for a few minutes till I started to smell
something odd and potentially burning from the laptop (!) -- and killed the
process.

Except for the one field ( =B2 ) in the Criteria section, all fields contained
static data.
Comment 2 Andreas J. Guelzow 2005-02-01 17:20:30 UTC
I can replicate the bug on Linux.
Comment 3 Morten Welinder 2005-02-01 19:01:45 UTC
Could we have a sample sheet, please?
Comment 4 Andy Longton 2005-02-02 02:50:51 UTC
Created attachment 36852 [details]
Spreadsheet that replicates this problem under both Windows and Linux

As requested, this should replicate the problem.  A screenshot of this sheet
just before pressing OK on the Advanced Filter dialog will be attached next.
Comment 5 Andy Longton 2005-02-02 02:58:26 UTC
Created attachment 36853 [details]
Screenshot of the previous spreadsheet just before running Advanced Filter

A screenshot of the sheet just before pressing OK on the Advanced Filter
dialog.
Comment 6 Morten Welinder 2005-02-03 16:25:05 UTC
Confirmed.  It is looping in the while loop of find_rows_that_match.

Something is really, really strange here.

1. The "continue", which is hit, in an instant infinite loop.  I wonder what
   on earth was meant here.

2. first_col is 3; so is cond->column.  row is 1.  Why is it looking at G2?

Jody?
Comment 7 Jody Goldberg 2005-05-14 22:01:57 UTC
The code is wrong on many levels.  The loop in (1) was fixed a while ago (1.4.3
I think).  I just patched (2).