ID |
Date |
Icon |
Author |
Author Email |
Category |
OS |
ELOG Version |
Subject |
66361
|
Thu May 14 17:41:44 2009 |
| soren poulsen | soren.poulsen@cern.ch | Bug report | Linux | 2.7.6 | E-log crash |
Hi
I am having a little problem with e-log that I can easily reproduce.
I have defined a number of constraints on my e-log fields and I am testing what happens when the user does not respect them.
So this only happens when I am not observing the input formats or the mandatory fields.
This is the GDB trace. This is not very verbose, so I must learn to use the other tracers, I guess.
Server listening on port 8079 ...
Program received signal SIGSEGV, Segmentation fault.
0x0000000000414077 in is_script (
at src/elogd.c:5414
5414 for (i = 0; script_tags[i][0]; i++) {
(gdb)
Soren |
66362
|
Thu May 14 17:59:04 2009 |
| Stefan Ritt | stefan.ritt@psi.ch | Bug report | Linux | 2.7.6 | Re: E-log crash |
soren poulsen wrote: |
Hi
I am having a little problem with e-log that I can easily reproduce.
I have defined a number of constraints on my e-log fields and I am testing what happens when the user does not respect them.
So this only happens when I am not observing the input formats or the mandatory fields.
This is the GDB trace. This is not very verbose, so I must learn to use the other tracers, I guess.
Server listening on port 8079 ...
Program received signal SIGSEGV, Segmentation fault.
0x0000000000414077 in is_script (
at src/elogd.c:5414
5414 for (i = 0; script_tags[i][0]; i++) {
(gdb)
Soren
|
It would be best if I could reproduce your problem. So can you start from a very simple configuration file, add your constraints until the problme happens, and then send me the config file? |
66364
|
Tue May 19 15:19:16 2009 |
| soren poulsen | soren.poulsen@cern.ch | Bug report | Linux | 2.7.6 | Re: E-log crash |
Stefan Ritt wrote: |
soren poulsen wrote: |
Hi
I am having a little problem with e-log that I can easily reproduce.
I have defined a number of constraints on my e-log fields and I am testing what happens when the user does not respect them.
So this only happens when I am not observing the input formats or the mandatory fields.
This is the GDB trace. This is not very verbose, so I must learn to use the other tracers, I guess.
Server listening on port 8079 ...
Program received signal SIGSEGV, Segmentation fault.
0x0000000000414077 in is_script (
at src/elogd.c:5414
5414 for (i = 0; script_tags[i][0]; i++) {
(gdb)
Soren
|
It would be best if I could reproduce your problem. So can you start from a very simple configuration file, add your constraints until the problme happens, and then send me the config file?
|
Hi
The problem is not exactly what I thought, but I did track it down. Here is a logbook definition that reliably creates a segmentation fault in e-log. This logbook's only useful purpose is in fact to create a segmentation fault:
You select "New", then "Select", without entering anything.
--------------
Login user = Admin
Attributes = Link
Change Link = <a href="https://$Link"">$Link</a>
---------------
I would be able to create some more debugging information of course, if needed.
Regards
Soren
|
66367
|
Wed Jun 3 19:53:13 2009 |
| Paul T. Keener | keener@hep.upenn.edu | Bug report | Other | 2.7.5 | Re: elogd dies after receiving second SIGHUP |
> > elogd continues to run after a SIGHUP. If a second SIGHUP is received the daemon terminates.
> > This was observed on Solaris 10 (SPARC).
> > The documentation states that elogd should re-read configuration after receiving SIGHUP.
>
> I tried to reproduce this but without success. I could send many SIGHUPs without the daemon terminating. Maybe
> you modified the configuration file in between and elogd barked out because of some wrong configuration? Try to
> start the daemon interactively and see what exactly happens if you send several SIGHUPs.
The problem is that under Solaris signal handlers installed via signal() get uninstalled *before* the signal handler
is called. Thus the second time elogd receives a SIGHUP, you get the default action, which is to kill the process.
The solution is to use the POSIX sigaction() call instead of signal(). |
66368
|
Thu Jun 4 09:49:13 2009 |
| Stefan Ritt | stefan.ritt@psi.ch | Bug report | Other | 2.7.5 | Re: elogd dies after receiving second SIGHUP |
> > > elogd continues to run after a SIGHUP. If a second SIGHUP is received the daemon terminates.
> > > This was observed on Solaris 10 (SPARC).
> > > The documentation states that elogd should re-read configuration after receiving SIGHUP.
> >
> > I tried to reproduce this but without success. I could send many SIGHUPs without the daemon terminating. Maybe
> > you modified the configuration file in between and elogd barked out because of some wrong configuration? Try to
> > start the daemon interactively and see what exactly happens if you send several SIGHUPs.
>
> The problem is that under Solaris signal handlers installed via signal() get uninstalled *before* the signal handler
> is called. Thus the second time elogd receives a SIGHUP, you get the default action, which is to kill the process.
>
> The solution is to use the POSIX sigaction() call instead of signal().
Can you try to modify the signal() calls into sigaction(). If this really works under Solaris, I will incorporate this
then into the distribution. |
66370
|
Thu Jun 4 14:05:58 2009 |
| Stefan Ritt | stefan.ritt@psi.ch | Bug report | Linux | 2.7.6 | Re: E-log crash |
soren poulsen wrote: |
Hi
I am having a little problem with e-log that I can easily reproduce.
I have defined a number of constraints on my e-log fields and I am testing what happens when the user does not respect them.
So this only happens when I am not observing the input formats or the mandatory fields.
This is the GDB trace. This is not very verbose, so I must learn to use the other tracers, I guess.
Server listening on port 8079 ...
Program received signal SIGSEGV, Segmentation fault.
0x0000000000414077 in is_script (
at src/elogd.c:5414
5414 for (i = 0; script_tags[i][0]; i++) {
(gdb)
Soren
|
I had finally the same problem. This is due to a bug indeed inside is_script(). It has been fixed in revision 2201. |
66371
|
Thu Jun 4 14:37:54 2009 |
| Stefan Ritt | stefan.ritt@psi.ch | Bug report | Linux | 2.7.6 | Re: User can modify Fixed Attributes Edit when selecting preview |
Allen wrote: |
Hi. I'm pretty new to ELOG, so I'm not sure if I'm doing something wrong.
I have a bunch of fields set so that after an entry has been submitted, they cannot edit certain fields. When I click the edit button, everything looks restricted as it should be, but if I click Preview, the user is then able to change the fixed attributes.
Is there anyway to remove the preview button inside the edit page, or is anyone else having this issue?
|
Thanks for reporting this bug. I fixed it in revision #2203. |
66374
|
Thu Jun 4 15:37:44 2009 |
| Stefan Ritt | stefan.ritt@psi.ch | Bug report | Linux | 2.7.6-2198 | Re: Embedded images break when moving from one book to another. |
Mike wrote: |
Here's the issue. We use elog to develope products we need to be able to see all the thumbnail images in a
particular logbook. Our default view is to use the threaded view fully expanded in order to have all the thumbnails
be displayed for each product. This works fine but when we move one message to another logbook the thumbnails
end up getting broken and won't be displayed. The only way to fix this is to remove the image and re-upload the
picture after the message is moved. This is not a good option because we have hundrends of items that are
constantly being moved around from logbook to logbook. Any ideas?
Regards,
Mike
EDIT:
On further inspection it seems that when you are moving messages to another log book the image date filename
is re-written which of course breaks the html link to the image. Is there anyway to supress this so that the filename
stays in tact when it's moved from one book to another. I don't see why the name of an attachment has to get changed
just because something is moved around.
|
I fixed this in revision #2204. The attachment names now stay the same. There is one tiny risk of screwing up, namely if you have the same attachment name in two different logbooks (accidentally also submitted at the same second and therefore the same time stamp). If you then copy these two entries to a third logbook, one attachment will overwrite the other one, but that risk is indeed really small. I actually had to re-write the link to the attachment inside the text body (even differently for ELCode and HTML encoding). So I'm not 100% sure I covered all cases, so just give it a try. |