Ticket #3974 (closed defect: fixed)

Opened 3 years ago

Last modified 2 years ago

tirex-master crash after tirex-batch requests from STDIN

Reported by: ieskok Owned by: nimix
Priority: major Milestone:
Component: tirex Version:
Keywords: Cc: nimix

Description

After doing several requests via tirex-batch to same meta tile, tirex-master crashes. Requests was generated as INIT list from standard input: ... map=osmlt z=14 x=9133 y=5097 map=osmlt z=14 x=9133 y=5098 map=osmlt z=14 x=9133 y=5099 map=osmlt z=14 x=9134 y=5097 map=osmlt z=14 x=9135 y=5097 ...

syslog: tirex-master[3128]: send: Cannot determine peer address at /usr/share/perl5/Tirex/Source/Command.pm line 166

Attachments

patch.diff Download (601 bytes) - added by nimix 3 years ago.
patch that fixes the problem

Change History

comment:1 Changed 3 years ago by ieskok

  • Summary changed from tirex-master crach after tirex-batch requests from stdin to tirex-master crash after tirex-batch requests from STDIN

comment:2 in reply to: ↑ description Changed 3 years ago by nimix

  • Cc nimix added

I can confirm this bug. When I send a tile rendering request via tirex-batch of a tile that is already in the rendering queue tirex-master crashes. My first "solution" was to send a metatile_remove_request request before adding something to the queue but even then I get occasional crashes of tirex-master. I guess that happens if the tile that I'm requesting is currently rendering. When I start tirex-master in debug mode the following output is generated just before the crash:

tirex-master[19654]: request rendering of job id=1316945666_35994112 prio=99 map=default x=73000 y=41648 z=17
tirex-master[19654]: sending request to port 9331 id=1316945666_35994112 prio=99 map=default x=73000 y=41648 z=17
tirex-master[19654]: job rendering done id=1316945666_35993752 map=default x=73000 y=41640 z=17
tirex-master[19654]: request rendering of job id=1316945666_35984200 prio=99 map=default x=146000 y=83272 z=18
tirex-master[19654]: sending request to port 9331 id=1316945666_35984200 prio=99 map=default x=146000 y=83272 z=18
tirex-master[19654]: got msg: map=default prio=99 socket=IO::Socket::UNIX=GLOB(0x20f7a80) type=metatile_remove_request x=73000 y=41648 z=17
tirex-master[19654]: got msg: map=default prio=99 socket=IO::Socket::UNIX=GLOB(0x20f7a80) type=metatile_enqueue_request x=73000 y=41648 z=17
tirex-master[19654]: job rendering done id=1316945666_35994112 map=default x=73000 y=41648 z=17
tirex-master[19654]: request rendering of job id=1316945867_35833752 prio=99 map=default x=16264 y=10856 z=15
tirex-master[19654]: sending request to port 9331 id=1316945867_35833752 prio=99 map=default x=16264 y=10856 z=15
Use of uninitialized value in concatenation (.) or string at /usr/share/perl5/Tirex.pm line 117.
tirex-master[19654]: send: Cannot determine peer address at /usr/share/perl5/Tirex/Source/Command.pm line 166
send: Cannot determine peer address at /usr/share/perl5/Tirex/Source/Command.pm line 166

Changed 3 years ago by nimix

patch that fixes the problem

comment:3 Changed 3 years ago by nimix

  • Owner changed from jochen@… to nimix
  • Status changed from new to accepted

I think I found the problem (see patch). Can somebody review and commit it?

comment:4 Changed 2 years ago by woodpeck

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

applied in r26916. thanks.

Note: See TracTickets for help on using tickets.