Miscellaneous

LTI Canvas to Webwork Use of uninitialized value in string - LTIAdvanced.pm line 731.

LTI Canvas to Webwork Use of uninitialized value in string - LTIAdvanced.pm line 731.

by John Eismeier -
Number of replies: 4

Hi All,


I have some people testing a new course reporting:

WeBWorK Warnings

WeBWorK has encountered warnings while processing your request. If this occured
when viewing a problem, it was likely caused by an error or ambiguity in that
problem. Otherwise, it may indicate a problem with the WeBWorK system itself.
If you are a student, report these warnings to your professor to have them
corrected. If you are a professor, please consult the warning output below for
more information.

Warning messages

Use of uninitialized value in string ne at /opt/webwork/webwork2/lib/WeBWorK/Authen/LTIAdvanced.pm line 731.
Request information


And other people the same course is fine.  I have compared the LTI debug Canvas injection to webwork but didn't find a variable left empty that might be the cause.


Can someone suggest an approach to track down my data issue please?

Thank you.

-John

In reply to John Eismeier

Re: LTI Canvas to Webwork Use of uninitialized value in string - LTIAdvanced.pm line 731.

by Glenn Rice -

Another possibility that I forgot to mention in the github issue (https://github.com/openwebwork/webwork2/issues/1689) is that you may have database corruption.  Can you look in the database (most likely in the courseId_user table) and see if there is something different for the users that this warning occurs than for those that it doesn't?

In reply to Glenn Rice

Re: LTI Canvas to Webwork Use of uninitialized value in string - LTIAdvanced.pm line 731.

by John Eismeier -

I don't see an issue with the coursid_user table as corrupt?  I do wonder if the issue is:


displayMode: NULL

for the LTI reported issue vs for my table entry:

displayMode: MathJax

How did this difference happen?
In reply to John Eismeier

Re: LTI Canvas to Webwork Use of uninitialized value in string - LTIAdvanced.pm line 731.

by Glenn Rice -

displayMode is not a parameter that is passed in by the LMS, and it is not one of the things compared on line 731 of LTIAdvanced.pm.  So that certainly could not cause the warning that you are getting.  The things that are compared on line 731 are very specifically the things I listed in the github issue.

There is one thing that might change my assessment quite drastically of your situation.  What version of WeBWorK are you using?  I have been assuming you are using WeBWorK 2.16 based on what is on line 731 of the code in that release matching the situation you describe and having a string comparison on that line.  If you are not using version 2.15 of WeBWorK, there isn't a string comparison on line 731; however, there is one a little before that.  Other versions of WeBWorK will have different things on line 731.

In reply to Glenn Rice

Re: LTI Canvas to Webwork Use of uninitialized value in string - LTIAdvanced.pm line 731.

by John Eismeier -

Yes, we are using WeBWork 2.16.  I upgraded from 2.15 last October.  I haven't pulled any code changes since then.