Bug Hunting Session
Bug 83365 - Other: Access across spreadsheet returns Err:504
Summary: Other: Access across spreadsheet returns Err:504
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
4.3.1.2 release
Hardware: Other All
: medium normal
Assignee: Eike Rathke
URL:
Whiteboard: BSA target:5.1.0 target:5.0.0.1 targe...
Keywords: bibisected, bisected, regression
Depends on:
Blocks:
 
Reported: 2014-09-01 19:05 UTC by Júlio Hoffimann
Modified: 2016-10-25 19:20 UTC (History)
6 users (show)

See Also:
Crash report or crash signature:


Attachments
Sample file reproducing the bug (11.84 KB, application/vnd.oasis.opendocument.spreadsheet)
2014-09-01 21:33 UTC, Júlio Hoffimann
Details
Sample file modified. (18.38 KB, application/vnd.oasis.opendocument.spreadsheet)
2014-09-01 22:07 UTC, m.a.riosv
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Júlio Hoffimann 2014-09-01 19:05:37 UTC
Problem description: I have a set of spreadsheets that used to work in previous versions.

Steps to reproduce:
1. Create a spreadsheet named 'foo' with 10 in the $A1 cell.
2. Create a spreadsheet named 'bar' with the column $A1:$A10 filled with 1's.
3. Create a spreadsheet named 'baz' and type the following in any of its cells:

=COUNTIF(bar.$A$1:INDIRECT("$A"&foo.$A$1),1)

Current behavior: Err: 504

Expected behavior: 10

              
Operating System: Linux (Other)
Version: 4.3.1.2 release
Last worked in: 4.1.0.4 release
Comment 1 Júlio Hoffimann 2014-09-01 19:07:44 UTC
I don't remember the latest version in which the code worked. I've guessed 4.1.0.4.
Comment 2 m.a.riosv 2014-09-01 21:20:07 UTC
Please attach a sample file.
Comment 3 Júlio Hoffimann 2014-09-01 21:33:14 UTC
Created attachment 105571 [details]
Sample file reproducing the bug

Added sample file as requested.
Comment 4 m.a.riosv 2014-09-01 22:07:36 UTC
Created attachment 105575 [details]
Sample file modified.

I think to build the address with INDIRECT() is needed to put the sheet name inside indirect for the end of the range, when the begin of the range belongs to other sheet.

=COUNTIF(bar.$A$1:INDIRECT("bar.$A"&foo.$A$1);1)
                            ^^^
I`m not sure it can be considered a bug.
Comment 5 Júlio Hoffimann 2014-09-01 22:09:54 UTC
I know we can fix the line by adding the sheet name, the problem is that this code works in previous versions.
Comment 6 m.a.riosv 2014-09-01 22:33:48 UTC
Verified, regression from:
 4.1.6.2 Build ID: 40ff705089295be5be0aae9b15123f687c05b0a
to
 4.2.0.4 Build ID: 05dceb5d363845f2cf968344d7adab8dcfb2ba71
Comment 7 raal 2014-09-05 17:30:56 UTC
a67b874d60de1f1a44bef57a53a7b8a84db0ba58 is the first bad commit
commit a67b874d60de1f1a44bef57a53a7b8a84db0ba58
Author: Bjoern Michaelsen <bjoern.michaelsen@canonical.com>
Date:   Tue Dec 11 03:32:02 2012 +0000

    source-hash-19f4ebd8a54da0ae03b9cc8481613e5cd20ee1e7
    
    commit 19f4ebd8a54da0ae03b9cc8481613e5cd20ee1e7
    Author:     Caolán McNamara <caolanm@redhat.com>
    AuthorDate: Mon Nov 12 21:17:37 2012 +0000
    Commit:     Caolán McNamara <caolanm@redhat.com>
    CommitDate: Tue Nov 13 09:49:18 2012 +0000
    
        use SetControlForeground instead of SetTextColor
    
        because that's persistent across unrelated style
        changes otherwise setting e.g. alignment will
        reset the color to default black
    
        Change-Id: I2b975c3914a59a93e54d72aa0975a066b5edf533

:100644 100644 6d85145f7ba0ead31c84e60a4f7ea59af07f4e83 29d96b0de6d16a73b1e9ff2ca8745b115e40d115 M	autogen.log
:100644 100644 5d2105bc5db0d97452b3f213d028567f7ef47f74 fc50744f3abcdc37e7e8ae63b5ee73f25bb1c6e9 M	ccache.log
:100644 100644 cb3471f771599c0198309b766b1119b4272134de 28c61ffba7e7adab533f7ff9a4f4f595e4439822 M	commitmsg
:100644 100644 ea177fc38ffa1376ecf167db31aadeae1ee62b34 144992024292b77d35ec3f94e2b3fd309f9d27f1 M	dev-install.log
:100644 100644 34bcd3ceb8be50720147e089fde247e8d90868b0 ae2cc20a3e3477e7b1845778dd570bf277812953 M	make.log
:040000 040000 21c1e97d1421f61bbbeb0734daeac98e43fe52a1 2c1a78c87a5e84fe1c2bafb167b87e7c85aed252 M	opt

 git bisect log
# bad: [423a84c4f7068853974887d98442bc2a2d0cc91b] source-hash-c15927f20d4727c3b8de68497b6949e72f9e6e9e
# good: [65fd30f5cb4cdd37995a33420ed8273c0a29bf00] source-hash-d6cde02dbce8c28c6af836e2dc1120f8a6ef9932
git bisect start 'latest' 'oldest'
# bad: [e02439a3d6297a1f5334fa558ddec5ef4212c574] source-hash-6b8393474974d2af7a2cb3c47b3d5c081b550bdb
git bisect bad e02439a3d6297a1f5334fa558ddec5ef4212c574
# good: [8f4aeaad2f65d656328a451154142bb82efa4327] source-hash-1885266f274575327cdeee9852945a3e91f32f15
git bisect good 8f4aeaad2f65d656328a451154142bb82efa4327
# bad: [9995fae0d8a24ce31bcb5e9cd0459b69cfbf7a02] source-hash-8600bc24bbc9029e92bea6102bff2921bc10b33e
git bisect bad 9995fae0d8a24ce31bcb5e9cd0459b69cfbf7a02
# good: [51b63dca7427db64929ae1885d7cf1cc7eb0ba28] source-hash-806d18ae7b8c241fe90e49d3d370306769c50a10
git bisect good 51b63dca7427db64929ae1885d7cf1cc7eb0ba28
# bad: [d65a58c31c8da044ef66ae4517fa2fe74cec0019] source-hash-2e053cf5ea4d93a2e1845e795a9c7fe1e08c84af
git bisect bad d65a58c31c8da044ef66ae4517fa2fe74cec0019
# bad: [79e02001f27d33b3b478324ab6fba5683413b4d9] source-hash-b6c016da23d309b4ac7d154bc33a22397974ed73
git bisect bad 79e02001f27d33b3b478324ab6fba5683413b4d9
# good: [183a576d94de9a9439d580c8b81f335ab57cdbdc] source-hash-a599f5b4b51848e3b397d471c9d12b373caadcef
git bisect good 183a576d94de9a9439d580c8b81f335ab57cdbdc
# bad: [a67b874d60de1f1a44bef57a53a7b8a84db0ba58] source-hash-19f4ebd8a54da0ae03b9cc8481613e5cd20ee1e7
git bisect bad a67b874d60de1f1a44bef57a53a7b8a84db0ba58
# good: [7fd8bdb3b18f50ea0adbc0a5e611f6a844b23189] source-hash-a1ac2538e9b287444500618ab4d2f0f06c25cf34
git bisect good 7fd8bdb3b18f50ea0adbc0a5e611f6a844b23189
# first bad commit: [a67b874d60de1f1a44bef57a53a7b8a84db0ba58] source-hash-19f4ebd8a54da0ae03b9cc8481613e5cd20ee1e7
Comment 8 Matthew Francis 2014-12-31 12:36:21 UTC
When I looked at this it came out different to the above; in summary:

Bibisect result:
# first bad commit: [ba096f438393091574da98fe7b8e6b05182a8971] source-hash-8499e78ca03c792f4fa2650e02b519094ba0baa8

Exact commit which changed the behaviour:

commit 194e9f9bae28bdf22a9ed4779c1656ee693f3302
Author: Kohei Yoshida <kohei.yoshida@gmail.com>
Date:   Mon Jul 22 23:15:21 2013 -0400

    Remove CalcAbsIfRel() from ScComplexRefData::Extend().
    
    Change-Id: I917acbd2d2567542c6388e796fd49fe4bb48f5ae
Comment 9 Eike Rathke 2015-04-17 14:40:59 UTC
Raal did a bibisect (binary build bisect, which gives a range of commits), Matthew did an exact bisect. With commit 194e9f9bae28bdf22a9ed4779c1656ee693f3302 indeed the detailed relative reference and 3D sheet flag handling and inheritance were lost.
Comment 10 A (Andy) 2015-04-17 20:37:35 UTC
Reproducible with LO 4.4.1.2, Win 8.1
Comment 11 Eike Rathke 2015-06-17 10:11:53 UTC
I'm taking this.
Comment 12 Commit Notification 2015-06-17 23:18:17 UTC
Eike Rathke committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=e503addfbbe45efe1a3c06392c66fb79c3c72d07

properly inherit relative and 3D flags when extending, tdf#83365 related

It will be available in 5.1.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 13 Commit Notification 2015-06-17 23:18:20 UTC
Eike Rathke committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=fb6dd2a73074b9695bd8ddf7ba40f1819b03024e

Resolves: tdf#83365 push proper references in INDIRECT

It will be available in 5.1.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 14 Commit Notification 2015-06-18 00:48:54 UTC
Eike Rathke committed a patch related to this issue.
It has been pushed to "libreoffice-5-0":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=a60fc4bf72bd4cecda8b50a4b62b0c14101f8a58&h=libreoffice-5-0

properly inherit relative and 3D flags when extending, tdf#83365 related

It will be available in 5.0.0.1.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 15 Commit Notification 2015-06-18 00:48:58 UTC
Eike Rathke committed a patch related to this issue.
It has been pushed to "libreoffice-5-0":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=7b7aac2402038c3c9aaeacbbd61c83618728b857&h=libreoffice-5-0

Resolves: tdf#83365 push proper references in INDIRECT

It will be available in 5.0.0.1.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 16 Eike Rathke 2015-06-18 08:05:06 UTC
Pending review for 4-4 https://gerrit.libreoffice.org/16352
Comment 17 Commit Notification 2015-06-18 08:26:31 UTC
Henry Castro committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=f2f9c1e09c09eaf03f2625b7d0b9720d0c62b479

unit test for INDIRECT reference handling, tdf#83365

It will be available in 5.1.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 18 Commit Notification 2015-06-18 16:17:12 UTC
Eike Rathke committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=9d5061d3027eab106479b7f3697a0edfd11858cd

simplify the unit test, tdf#83365 follow-up

It will be available in 5.1.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 19 Commit Notification 2015-06-30 11:32:45 UTC
Eike Rathke committed a patch related to this issue.
It has been pushed to "libreoffice-4-4":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=2d4f172c963e5503c74ae79318d09392454ae144&h=libreoffice-4-4

Resolves: tdf#83365 push proper references in INDIRECT

It will be available in 4.4.5.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 20 Robinson Tryon (qubit) 2015-12-17 08:34:30 UTC Comment hidden (obsolete)