Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Blank report name in Output:Table:SummaryReports results in fatal error with no error message identifying the problem #6919

Closed
1 of 3 tasks
mjwitte opened this issue Aug 21, 2018 · 12 comments · Fixed by #8156 or #10201
Assignees
Labels
LowComplexityApproved Used for subcontractor defect complexity requests PriorityHigh This defect or feature has been declared high priority

Comments

@mjwitte
Copy link
Contributor

mjwitte commented Aug 21, 2018

Issue overview

This object

Output:Table:SummaryReports,
    AnnualBuildingUtilityPerformanceSummary,  !- Report 1 Name
    ZoneHeatingSummaryMonthly,  !- Report 2 Name
    ZoneElectricSummaryMonthly,  !- Report 3 Name
    ZoneCoolingSummaryMonthly,  !- Report 4 Name
    SensibleHeatGainSummary, !- Report 5 Name
    ,!- Report 6 Name
    SpaceGainsMonthly,       !- Report 7 Name
    EnvelopeSummary,         !- Report 8 Name
    ObjectCountSummary,      !- Report 9 Name
    ComponentCostEconomicsSummary,  !- Report 10 Name
    AllSummary;              !- Report 11 Name

results in this error file

Program Version,EnergyPlus, Version 8.9.0-40101eaafd, YMD=2018.08.21 10:40,
   ************* Warning:  Node connection errors not checked - most system input has not been read (see previous warning).
   ************* Fatal error -- final processing.  Program exited before simulations began.  See previous error messages.
   ************* EnergyPlus Warmup Error Summary. During Warmup: 0 Warning; 0 Severe Errors.
   ************* EnergyPlus Sizing Error Summary. During Sizing: 0 Warning; 0 Severe Errors.
   ************* EnergyPlus Terminated--Fatal Error Detected. 0 Warning; 0 Severe Errors; Elapsed Time=00hr 00min  0.14sec

Help desk ticket 13045 has blank meter names in Output:Table:Monthly and Output:Table:Annual

Output:Table:Monthly,
Overall HVAC System Energy, !- Name
3, !- Digits After Decimal
Cooling:Electricity, !- Variable or Meter 1 Name
SumOrAverage, !- Aggregation Type for Variable or Meter 1
, !- Variable or Meter 2 Name
SumOrAverage; !- Aggregation Type for Variable or Meter 2

Output:Table:Annual,
OUTPUT TABLE 1, !- Name
, !- Filter
, !- Schedule Name
, !- Variable or Meter or EMS Variable or Field 1 Name
, !- Aggregation Type for Variable or Meter 1
2, !- Digits After Decimal 1
, !- Variable or Meter or EMS Variable or Field 2 Name
, !- Aggregation Type for Variable or Meter 2
2, !- Digits After Decimal 2
, !- Variable or Meter or EMS Variable or Field 3 Name
, !- Aggregation Type for Variable or Meter 3
2, !- Digits After Decimal 3
, !- Variable or Meter or EMS Variable or Field 4 Name
, !- Aggregation Type for Variable or Meter 4
2, !- Digits After Decimal 4
, !- Variable or Meter or EMS Variable or Field 5 Name
, !- Aggregation Type for Variable or Meter 5
2, !- Digits After Decimal 5
, !- Variable or Meter or EMS Variable or Field 6 Name
, !- Aggregation Type for Variable or Meter 6
2, !- Digits After Decimal 6
, !- Variable or Meter or EMS Variable or Field 7 Name
, !- Aggregation Type for Variable or Meter 7
2, !- Digits After Decimal 7
, !- Variable or Meter or EMS Variable or Field 8 Name
, !- Aggregation Type for Variable or Meter 8
2, !- Digits After Decimal 8
, !- Variable or Meter or EMS Variable or Field 9 Name
, !- Aggregation Type for Variable or Meter 9
2, !- Digits After Decimal 9
, !- Variable or Meter or EMS Variable or Field 10 Name
, !- Aggregation Type for Variable or Meter 10
2, !- Digits After Decimal 10
, !- Variable or Meter or EMS Variable or Field 11 Name
, !- Aggregation Type for Variable or Meter 11
2, !- Digits After Decimal 11
, !- Variable or Meter or EMS Variable or Field 12 Name
, !- Aggregation Type for Variable or Meter 12
2, !- Digits After Decimal 12
, !- Variable or Meter or EMS Variable or Field 13 Name
, !- Aggregation Type for Variable or Meter 13
2, !- Digits After Decimal 13
, !- Variable or Meter or EMS Variable or Field 14 Name
, !- Aggregation Type for Variable or Meter 14
2, !- Digits After Decimal 14
, !- Variable or Meter or EMS Variable or Field 15 Name
, !- Aggregation Type for Variable or Meter 15
2; !- Digits After Decimal 15
Error file results:

Program Version,EnergyPlus, Version 9.0.0-63db0a5a1f, YMD=2018.08.24 09:46,
************* Warning: Node connection errors not checked - most system input has not been read (see previous warning).
************* Fatal error -- final processing. Program exited before simulations began. See previous error messages.
************* EnergyPlus Warmup Error Summary. During Warmup: 0 Warning; 0 Severe Errors.
************* EnergyPlus Sizing Error Summary. During Sizing: 0 Warning; 0 Severe Errors.
************* EnergyPlus Terminated--Fatal Error Detected. 0 Warning; 0 Severe Errors; Elapsed Time=00hr 00min 11.61sec

Details

Some additional details for this issue (if relevant):

  • Win64
  • Version of EnergyPlus v8.9.0
  • Unmethours 33505

Checklist

Add to this list or remove from it as applicable. This is a simple templated set of guidelines.

  • Defect file attached here
    6919-1ZoneUncontrolled-v89.idf.txt

  • Ticket added to Pivotal for defect (development team task)

  • Pull request created (the pull request will have additional tasks related to reviewing changes that fix this defect)

@Myoldmopar
Copy link
Member

OK, so my changes over in #6983 cause this to be a fatal error. Here's the progression:

  • Before Final path to Version 9.0 #6983
    • The simulation fails without an error. This is because an exception is thrown when the input processor is trying to preprocess some specific IDF objects to build out the output variable requests. This includes the Output:Table:* objects
  • After Final path to Version 9.0 #6983
    • The simulation fails with a nice fatal error saying that the problem is a blank report name in one of the associated objects here...an improvement...but not ideal
  • Proper fix
    • If we want to make the report names required, then we need to change that in the IDD, and then the input processor will validate it.
    • If we want to allow it to be blank, then the try blocks added in Final path to Version 9.0 #6983 should be converted to actual checks on the JSON keys, and handle that situation appropriately.
    • In addition, an audit should be performed for all the output objects processed in JSON to make sure we handle blanks appropriately
    • In addition, we should verify that by "skipping" the field, we don't miss out on some other initialization

@Myoldmopar
Copy link
Member

I'm changing this milestone to E+ next and moving on.

@jmarrec
Copy link
Contributor

jmarrec commented Nov 20, 2018

@Myoldmopar Seems like we should just make it required in IDD. It's a simple IDD change, and the user will know where to go look, no?

@mjwitte
Copy link
Contributor Author

mjwitte commented Nov 20, 2018

For Output:Table:SummaryReports, the behavior has been.
v8.7, v8.8: ** Severe ** Output:Table:SummaryReports Field[2]="", invalid report name -- will not be reported. Simulation continues to completion.
v8.9: unexplained fatal error.
v9.0: ** Fatal ** Blank report name in Oputput:Table:SummaryReports. This should have included a transition rule to clean out any blanks so that working files from v8.8 and before would transition successfully. Now these will fail if there are any lurking out there with a blank report field.

Of course we also have a bunch of other old key choice synonyms out there that were never added to transition, so add this to #6601

@mjwitte
Copy link
Contributor Author

mjwitte commented Jul 14, 2020

Just retested this, behavior is still the same as noted here. Forgot to deal with the blank field case in #6601, so will make a new pull request to address this in Transition-V8-8-0-to-V8-9-0.

@benbrannon-arup
Copy link

Just FYI this seems to still be an issue in 9.6, at least for the Output:Table:Annual. It's easy enough to fix in the text file, but the IDFeditor causes the fatal error. There is also a typo in the error message where Output is spelled 'Oputput'

@mjwitte mjwitte reopened this Jan 6, 2022
@mjwitte
Copy link
Contributor Author

mjwitte commented Jan 6, 2022

Reopening this issue. Seems we should be able to trap blank unrequired fields and not error out on them, maybe.

@mjwitte mjwitte removed their assignment Mar 7, 2023
@JasonGlazer
Copy link
Contributor

@mjwitte and @Myoldmopar I was thinking about taking on this issue. It seems like this issue started out just trying to make sure a blank report name in Output:Table:SummaryReport occurs. This would be a straightforward fix. But near the end of the conversation, it seems like maybe this is an issue in general about how blank unrequired fields should be treated. That seems very open-ended to try to fix since it probably matters for each field. So which is it?

@mjwitte
Copy link
Contributor Author

mjwitte commented Sep 5, 2023

This only applies to blank fields in a few objects that get pre-processed by the input processor. Other blank fields return blank or zero or their default.

@Myoldmopar 's changes in 6983 let blank fields get past the input processor for the pertinent report objects. So, if I'm following correctly, all that's left to do here is to change the fatals added in #6983 to warnings for Output:Table:Monthly, Output:Table:Annual, and Oputput:Table:SummaryReports.

@JasonGlazer
Copy link
Contributor

That is great that it is only those couple of input objects. Thanks @mjwitte

@JasonGlazer
Copy link
Contributor

Do you think they should be Severes or Warnings? I was leaning toward Warnings.

@mjwitte
Copy link
Contributor Author

mjwitte commented Sep 5, 2023

Warnings.

@JasonGlazer JasonGlazer self-assigned this Sep 5, 2023
@Myoldmopar Myoldmopar added the LowComplexityApproved Used for subcontractor defect complexity requests label Apr 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
LowComplexityApproved Used for subcontractor defect complexity requests PriorityHigh This defect or feature has been declared high priority
Projects
None yet
5 participants