6.0.0-beta1
7/5/25

[#7420] Infinite recursion when renaming sentmail folders
Summary Infinite recursion when renaming sentmail folders
Queue IMP
Queue Version FRAMEWORK_3
Type Bug
State Resolved
Priority 1. Low
Owners slusarz (at) horde (dot) org
Requester jan (at) horde (dot) org
Created 10/01/2008 (6121 days ago)
Due
Updated 12/01/2008 (6060 days ago)
Assigned 10/19/2008 (6103 days ago)
Resolved 12/01/2008 (6060 days ago)
Github Issue Link
Github Pull Request
Milestone
Patch No

History
12/01/2008 10:24:27 AM Jan Schneider Comment #9
State ⇒ Resolved
Reply to this comment
That did it.
12/01/2008 10:24:18 AM CVS Commit Comment #8 Reply to this comment
11/06/2008 05:34:05 AM Michael Slusarz Comment #7
New Attachment: tree.patch Download
Reply to this comment
Nothing theoretically wrong with that code - my guess is you have a 
bunch of unsubscribed messages in a row.  So here's a pretty lame 
patch that adds overhead by removing the potential recursive call.   
Let me know if this helps.
11/01/2008 01:01:31 PM Jan Schneider Comment #6 Reply to this comment
More findings:

- it is an xdebug setting

- it happens each time I rename a folder

- it doesn't happen if raise that limit to 200
11/01/2008 11:27:59 AM Jan Schneider Comment #5 Reply to this comment
And one really weird side effect is, that the initial_page (or 
initial_view?) is reset to the default after this.
11/01/2008 11:25:28 AM Jan Schneider Comment #4 Reply to this comment
By the way, this also happens on each subsequent access to IMP, until 
I logout. With variations, like:





( ! ) Fatal error: Maximum function nesting level of '100' reached, 
aborting! in /srv/www/htdocs/horde/imp/lib/IMAP/Tree.php on line 1445

Call Stack

#        Time        Memory        Function        Location

1        0.0089        377192        {main}( )        ../mailbox.php:0

2        0.3637        6605408        imp::flistselect( )        ../mailbox.php:225

3        0.3675        6758200        imp_folder->flist_imp( )        ../IMP.php:478

4        0.3677        6758312        imp_folder->flist( )        ../Folder.php:146

5        0.3890        7604792        imp_tree->folderlist( )        ../Folder.php:105

6        0.4152        7628312        imp_tree->next( )        ../Tree.php:1748

7        0.4154        7628312        imp_tree->next( )        ../Tree.php:618

8        0.4155        7628312        imp_tree->next( )        ../Tree.php:618

9        0.4156        7628312        imp_tree->next( )        ../Tree.php:618

10        0.4157        7628344        imp_tree->next( )        ../Tree.php:618

11        0.4158        7628376        imp_tree->next( )        ../Tree.php:618

12        0.4159        7628816        imp_tree->next( )        ../Tree.php:618

13        0.4160        7629336        imp_tree->next( )        ../Tree.php:618

14        0.4161        7629872        imp_tree->next( )        ../Tree.php:618

15        0.4162        7630408        imp_tree->next( )        ../Tree.php:618

16        0.4163        7630944        imp_tree->next( )        ../Tree.php:618

17        0.4164        7631480        imp_tree->next( )        ../Tree.php:618

18        0.4165        7632016        imp_tree->next( )        ../Tree.php:618

19        0.4166        7632552        imp_tree->next( )        ../Tree.php:618

20        0.4167        7633088        imp_tree->next( )        ../Tree.php:618

21        0.4168        7633624        imp_tree->next( )        ../Tree.php:618

22        0.4169        7634160        imp_tree->next( )        ../Tree.php:618

23        0.4170        7634696        imp_tree->next( )        ../Tree.php:618

24        0.4171        7635288        imp_tree->next( )        ../Tree.php:618

25        0.4173        7635960        imp_tree->next( )        ../Tree.php:618

26        0.4174        7636632        imp_tree->next( )        ../Tree.php:618

27        0.4175        7637304        imp_tree->next( )        ../Tree.php:618

28        0.4176        7637976        imp_tree->next( )        ../Tree.php:618

29        0.4177        7638648        imp_tree->next( )        ../Tree.php:618

30        0.4178        7639320        imp_tree->next( )        ../Tree.php:618

31        0.4179        7639992        imp_tree->next( )        ../Tree.php:618

32        0.4180        7640664        imp_tree->next( )        ../Tree.php:618

33        0.4181        7641336        imp_tree->next( )        ../Tree.php:618

34        0.4182        7642008        imp_tree->next( )        ../Tree.php:618

35        0.4183        7642680        imp_tree->next( )        ../Tree.php:618

36        0.4184        7643352        imp_tree->next( )        ../Tree.php:618

37        0.4185        7644024        imp_tree->next( )        ../Tree.php:618

38        0.4186        7644696        imp_tree->next( )        ../Tree.php:618

39        0.4188        7645368        imp_tree->next( )        ../Tree.php:618

40        0.4189        7646040        imp_tree->next( )        ../Tree.php:618

41        0.4190        7647232        imp_tree->next( )        ../Tree.php:618

42        0.4191        7647904        imp_tree->next( )        ../Tree.php:618

43        0.4192        7648576        imp_tree->next( )        ../Tree.php:618

44        0.4193        7649784        imp_tree->next( )        ../Tree.php:618

45        0.4194        7650456        imp_tree->next( )        ../Tree.php:618

46        0.4195        7651128        imp_tree->next( )        ../Tree.php:618

47        0.4196        7651800        imp_tree->next( )        ../Tree.php:618

48        0.4197        7652472        imp_tree->next( )        ../Tree.php:618

49        0.4198        7653144        imp_tree->next( )        ../Tree.php:618

50        0.4199        7653816        imp_tree->next( )        ../Tree.php:618

51        0.4201        7654488        imp_tree->next( )        ../Tree.php:618

52        0.4202        7655160        imp_tree->next( )        ../Tree.php:618

53        0.4203        7655832        imp_tree->next( )        ../Tree.php:618

54        0.4204        7656504        imp_tree->next( )        ../Tree.php:618

55        0.4205        7657176        imp_tree->next( )        ../Tree.php:618

56        0.4206        7657848        imp_tree->next( )        ../Tree.php:618

57        0.4207        7658520        imp_tree->next( )        ../Tree.php:618

58        0.4208        7659192        imp_tree->next( )        ../Tree.php:618

59        0.4209        7659864        imp_tree->next( )        ../Tree.php:618

60        0.4210        7660536        imp_tree->next( )        ../Tree.php:618

61        0.4211        7661208        imp_tree->next( )        ../Tree.php:618

62        0.4212        7661880        imp_tree->next( )        ../Tree.php:618

63        0.4213        7662552        imp_tree->next( )        ../Tree.php:618

64        0.4214        7663224        imp_tree->next( )        ../Tree.php:618

65        0.4215        7663896        imp_tree->next( )        ../Tree.php:618

66        0.4216        7664568        imp_tree->next( )        ../Tree.php:618

67        0.4218        7665240        imp_tree->next( )        ../Tree.php:618

68        0.4219        7665912        imp_tree->next( )        ../Tree.php:618

69        0.4220        7666584        imp_tree->next( )        ../Tree.php:618

70        0.4221        7667256        imp_tree->next( )        ../Tree.php:618

71        0.4222        7667928        imp_tree->next( )        ../Tree.php:618

72        0.4223        7668600        imp_tree->next( )        ../Tree.php:618

73        0.4224        7669272        imp_tree->next( )        ../Tree.php:618

74        0.4225        7669944        imp_tree->next( )        ../Tree.php:618

75        0.4226        7670616        imp_tree->next( )        ../Tree.php:618

76        0.4227        7671288        imp_tree->next( )        ../Tree.php:618

77        0.4228        7671960        imp_tree->next( )        ../Tree.php:618

78        0.4229        7672632        imp_tree->next( )        ../Tree.php:618

79        0.4230        7673304        imp_tree->next( )        ../Tree.php:618

80        0.4231        7673976        imp_tree->next( )        ../Tree.php:618

81        0.4233        7674648        imp_tree->next( )        ../Tree.php:618

82        0.4234        7675320        imp_tree->next( )        ../Tree.php:618

83        0.4235        7675992        imp_tree->next( )        ../Tree.php:618

84        0.4236        7677704        imp_tree->next( )        ../Tree.php:618

85        0.4237        7678376        imp_tree->next( )        ../Tree.php:618

86        0.4238        7679048        imp_tree->next( )        ../Tree.php:618

87        0.4239        7679720        imp_tree->next( )        ../Tree.php:618

88        0.4240        7680392        imp_tree->next( )        ../Tree.php:618

89        0.4241        7682136        imp_tree->next( )        ../Tree.php:618

90        0.4242        7682808        imp_tree->next( )        ../Tree.php:618

91        0.4243        7683480        imp_tree->next( )        ../Tree.php:618

92        0.4244        7684152        imp_tree->next( )        ../Tree.php:618

93        0.4245        7684824        imp_tree->next( )        ../Tree.php:618

94        0.4246        7685496        imp_tree->next( )        ../Tree.php:618

95        0.4247        7686168        imp_tree->next( )        ../Tree.php:618

96        0.4248        7686840        imp_tree->next( )        ../Tree.php:618

97        0.4249        7687512        imp_tree->next( )        ../Tree.php:618

98        0.4250        7688184        imp_tree->next( )        ../Tree.php:618

99        0.4251        7688496        imp_tree->_activeelt( )        ../Tree.php:578


11/01/2008 11:23:59 AM Jan Schneider Comment #3 Reply to this comment
It happened again this month. This might be some recursion protection 
from Xdebug though. I still wonder if recursively calling next() this 
often in the expected behavior. If yes, then this ticket can be closed.
10/19/2008 09:26:56 PM Michael Slusarz Comment #2
State ⇒ Feedback
Reply to this comment
I don't see this.
10/01/2008 12:00:22 PM Jan Schneider Comment #1
Milestone ⇒
State ⇒ Assigned
Patch ⇒ No
Assigned to Michael Slusarz
Queue ⇒ IMP
Summary ⇒ Infinite recursion when renaming sentmail folders
Type ⇒ Bug
Priority ⇒ 1. Low
Reply to this comment
Running the monthly maintenance to rename sentmail folders seems to 
get trapped in an infinite recursion. Here's the error and backtrace:



( ! ) Fatal error: Maximum function nesting level of '100' reached, 
aborting! in /srv/www/htdocs/horde/imp/lib/IMAP/Tree.php on line 1039

Call Stack

#        Time        Memory        Function        Location

1        0.0003        15080        {main}( )        ../index.php:0

2        0.7045        93656        require( '/srv/www/htdocs/horde/imp/redirect.php' 
)        ../index.php:26

3        1.8809        5907968        imp_session::logintasks( )        ../redirect.php:121

4        2.0148        5911952        maintenance_imp->runmaintenance( )        ../Session.php:332

5        2.0148        5911952        maintenance_imp->_domaintenancetasks( 
)        ../Maintenance.php:187

6        2.0160        5935224        maintenance_task_rename_sentmail_monthly->domaintenance( 
)        ../Maintenance.php:494

7        4.3905        8620184        imp_folder->rename( )        ../rename_sentmail_monthly.php:43

8        5.2041        8627760        imp_folder->_ondelete( )        ../Folder.php:400

9        5.2045        8627848        imp_search->sessionsetup( )        ../Folder.php:241

10        5.2045        8627848        imp_search->createvinboxfolder( )        ../Search.php:104

11        5.2055        8626984        imp_tree->getpolllist( )        ../Search.php:430

12        5.2055        8627016        imp_tree->folderlist( )        ../Tree.php:1156

13        5.4452        8634072        imp_tree->next( )        ../Tree.php:1748

14        5.4454        8634072        imp_tree->next( )        ../Tree.php:618

15        5.4455        8634072        imp_tree->next( )        ../Tree.php:618

16        5.4456        8634072        imp_tree->next( )        ../Tree.php:618

17        5.4457        8634072        imp_tree->next( )        ../Tree.php:618

18        5.4458        8634072        imp_tree->next( )        ../Tree.php:618

19        5.4459        8634072        imp_tree->next( )        ../Tree.php:618

20        5.4460        8634072        imp_tree->next( )        ../Tree.php:618

21        5.4461        8634072        imp_tree->next( )        ../Tree.php:618

22        5.4462        8634072        imp_tree->next( )        ../Tree.php:618

23        5.4463        8634072        imp_tree->next( )        ../Tree.php:618

24        5.4463        8634072        imp_tree->next( )        ../Tree.php:618

25        5.4464        8634072        imp_tree->next( )        ../Tree.php:618

26        5.4466        8634072        imp_tree->next( )        ../Tree.php:618

27        5.4466        8634072        imp_tree->next( )        ../Tree.php:618

28        5.4467        8634072        imp_tree->next( )        ../Tree.php:618

29        5.4468        8634072        imp_tree->next( )        ../Tree.php:618

30        5.4469        8634072        imp_tree->next( )        ../Tree.php:618

31        5.4470        8634072        imp_tree->next( )        ../Tree.php:618

32        5.4471        8634072        imp_tree->next( )        ../Tree.php:618

33        5.4472        8634072        imp_tree->next( )        ../Tree.php:618

34        5.4473        8634072        imp_tree->next( )        ../Tree.php:618

35        5.4474        8634072        imp_tree->next( )        ../Tree.php:618

36        5.4475        8634072        imp_tree->next( )        ../Tree.php:618

37        5.4476        8634072        imp_tree->next( )        ../Tree.php:618

38        5.4477        8634072        imp_tree->next( )        ../Tree.php:618

39        5.4479        8634072        imp_tree->next( )        ../Tree.php:618

40        5.4480        8634072        imp_tree->next( )        ../Tree.php:618

41        5.4481        8634312        imp_tree->next( )        ../Tree.php:618

42        5.4482        8634672        imp_tree->next( )        ../Tree.php:618

43        5.4483        8635032        imp_tree->next( )        ../Tree.php:618

44        5.4484        8635392        imp_tree->next( )        ../Tree.php:618

45        5.4485        8635752        imp_tree->next( )        ../Tree.php:618

46        5.4486        8636112        imp_tree->next( )        ../Tree.php:618

47        5.4487        8636472        imp_tree->next( )        ../Tree.php:618

48        5.4488        8636832        imp_tree->next( )        ../Tree.php:618

49        5.4489        8637192        imp_tree->next( )        ../Tree.php:618

50        5.4490        8637552        imp_tree->next( )        ../Tree.php:618

51        5.4491        8637912        imp_tree->next( )        ../Tree.php:618

52        5.4492        8638272        imp_tree->next( )        ../Tree.php:618

53        5.4493        8638632        imp_tree->next( )        ../Tree.php:618

54        5.4494        8638992        imp_tree->next( )        ../Tree.php:618

55        5.4495        8639352        imp_tree->next( )        ../Tree.php:618

56        5.4496        8639712        imp_tree->next( )        ../Tree.php:618

57        5.4497        8640072        imp_tree->next( )        ../Tree.php:618

58        5.4498        8640432        imp_tree->next( )        ../Tree.php:618

59        5.4499        8640792        imp_tree->next( )        ../Tree.php:618

60        5.4500        8641152        imp_tree->next( )        ../Tree.php:618

61        5.4501        8641512        imp_tree->next( )        ../Tree.php:618

62        5.4502        8641872        imp_tree->next( )        ../Tree.php:618

63        5.4503        8642232        imp_tree->next( )        ../Tree.php:618

64        5.4505        8642592        imp_tree->next( )        ../Tree.php:618

65        5.4506        8642952        imp_tree->next( )        ../Tree.php:618

66        5.4507        8643312        imp_tree->next( )        ../Tree.php:618

67        5.4508        8643672        imp_tree->next( )        ../Tree.php:618

68        5.4509        8644032        imp_tree->next( )        ../Tree.php:618

69        5.4510        8644392        imp_tree->next( )        ../Tree.php:618

70        5.4511        8644752        imp_tree->next( )        ../Tree.php:618

71        5.4512        8645112        imp_tree->next( )        ../Tree.php:618

72        5.4513        8645472        imp_tree->next( )        ../Tree.php:618

73        5.4514        8645832        imp_tree->next( )        ../Tree.php:618

74        5.4515        8646192        imp_tree->next( )        ../Tree.php:618

75        5.4516        8646552        imp_tree->next( )        ../Tree.php:618

76        5.4517        8646912        imp_tree->next( )        ../Tree.php:618

77        5.4518        8647272        imp_tree->next( )        ../Tree.php:618

78        5.4520        8647632        imp_tree->next( )        ../Tree.php:618

79        5.4521        8647992        imp_tree->next( )        ../Tree.php:618

80        5.4522        8648352        imp_tree->next( )        ../Tree.php:618

81        5.4523        8648712        imp_tree->next( )        ../Tree.php:618

82        5.4524        8649072        imp_tree->next( )        ../Tree.php:618

83        5.4525        8649432        imp_tree->next( )        ../Tree.php:618

84        5.4526        8649792        imp_tree->next( )        ../Tree.php:618

85        5.4527        8650152        imp_tree->next( )        ../Tree.php:618

86        5.4528        8650512        imp_tree->next( )        ../Tree.php:618

87        5.4529        8650872        imp_tree->next( )        ../Tree.php:618

88        5.4530        8651232        imp_tree->next( )        ../Tree.php:618

89        5.4531        8651592        imp_tree->next( )        ../Tree.php:618

90        5.4532        8651952        imp_tree->next( )        ../Tree.php:618

91        5.4533        8652312        imp_tree->next( )        ../Tree.php:618

92        5.4534        8652672        imp_tree->next( )        ../Tree.php:618

93        5.4535        8653064        imp_tree->next( )        ../Tree.php:618

94        5.4537        8653504        imp_tree->next( )        ../Tree.php:618

95        5.4538        8653976        imp_tree->next( )        ../Tree.php:618

96        5.4539        8654544        imp_tree->next( )        ../Tree.php:618

97        5.4540        8655160        imp_tree->next( )        ../Tree.php:618

98        5.4541        8655776        imp_tree->_activeelt( )        ../Tree.php:616

99        5.4541        8655776        imp_tree->iscontainer( )        ../Tree.php:1445


Saved Queries