You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
EDIT I've found the cause/solution to the bug I initially reported, so am adjusting this to a feature request:
I want to suggest a feature:
Settings should be validated before attempting to push data and meaningful feedback provided to allow someone to adjust bad config.
What is your use case for such a feature?
The original issue is fully outlined below. To summarize: a setting in the config was in the wrong format (a number was wrapped in quotes so was treated as a string instead of the number expected by code), however the error was a generic conversion error, which made troubleshooting difficult.
In case someone else encounters this issue, I'm leaving the "bug details" below.
Original "bug report" below
I want to report a bug:
--dry-run flag gives the "Indexing Complete" status but actual build fails with error: Error: no implicit conversion of String into Integer
What is the current behavior?
Aftger running the command bundle exec jekyll algolia I get the following output:
Configuration file: E:/Documentation/jekyll-deployment-scripts/jekyll-layout/_config.yml
Processing site...
Progress: |====================================================================|
Progress: |====================================================================|
Settings are already up to date.
Getting list of existing records
Updating records in index stg_help...
Records to delete: 655
Records to add: 1406
jekyll 3.7.4 | Error: no implicit conversion of String into Integer
To troubleshoot, I used the --dry-run flag (bundle exec jekyll algolia --dry-run) which displays "Indexing complete"
Configuration file: E:/Documentation/jekyll-deployment-scripts/jekyll-layout/_config.yml
Processing site...
Progress: |====================================================================|
Progress: |====================================================================|
Settings are already up to date.
Getting list of existing records
Updating records in index stg_help...
Records to delete: 655
Records to add: 1406
✔ Indexing complete
To troubleshoot further I used the solution mentioned here: #22 (comment)
Using the json data file generated by the plugin linked above, I was successfully able to manually upload the whole data set in one go - I assumed that something about the data was off but there were no error messages when I submitted via the "manual upload" option on the web.
At this point, the value of the plugin (auto-updating the right records) is lost to me until I can figure out what setting, frontmatter, or other thing is causing the issue. Is there something I should look for in the content? (e.g. if my frontmatter has numeric properties, is that causing the issue?).
What is your expected behavior?
I expect either:
the --dry-run option should produce similar results to the live build.
a meaningful error message pointing to what data, line of json, or file caused the failure to upload.
Ruby version used:
This issue is consistent on two different platforms building the same content/config files (one's a build server - linux, one's my desktop - windows 10). Here are both ruby versions
The issue was due to the setting indexing_batch_size in quotes in _config.yml
Broken:
algolia:
application_id: "XKCD797"# from accountsearch_only_api_key: "00000000000000000000000000000000"# from accountindex_name: "my_index"# from accountindexing_batch_size: "500"#BROKEN LINE IS HEREnodes_to_index: 'p,li,blockquote,dd'files_to_exclude: []
Working:
algolia:
application_id: "XKCD797"# from accountsearch_only_api_key: "00000000000000000000000000000000"# from accountindex_name: "my_index"# from accountindexing_batch_size: 500#FIXED LINE IS HEREnodes_to_index: 'p,li,blockquote,dd'files_to_exclude: []
The text was updated successfully, but these errors were encountered:
Ah I guess this is because the dry run doesn't actually index, and thus doesn't use that part of the configuration. We'd love a PR where the types of the remaining unused settings are tested during dry run too
EDIT I've found the cause/solution to the bug I initially reported, so am adjusting this to a feature request:
I want to suggest a feature:
Settings should be validated before attempting to push data and meaningful feedback provided to allow someone to adjust bad config.
What is your use case for such a feature?
The original issue is fully outlined below. To summarize: a setting in the config was in the wrong format (a number was wrapped in quotes so was treated as a string instead of the number expected by code), however the error was a generic conversion error, which made troubleshooting difficult.
In case someone else encounters this issue, I'm leaving the "bug details" below.
Original "bug report" below
I want to report a bug:
--dry-run
flag gives the "Indexing Complete" status but actual build fails with error:Error: no implicit conversion of String into Integer
What is the current behavior?
Aftger running the command
bundle exec jekyll algolia
I get the following output:To troubleshoot, I used the
--dry-run
flag (bundle exec jekyll algolia --dry-run
) which displays "Indexing complete"To troubleshoot further I used the solution mentioned here: #22 (comment)
Using the json data file generated by the plugin linked above, I was successfully able to manually upload the whole data set in one go - I assumed that something about the data was off but there were no error messages when I submitted via the "manual upload" option on the web.
At this point, the value of the plugin (auto-updating the right records) is lost to me until I can figure out what setting, frontmatter, or other thing is causing the issue. Is there something I should look for in the content? (e.g. if my frontmatter has numeric properties, is that causing the issue?).
What is your expected behavior?
I expect either:
--dry-run
option should produce similar results to the live build.Ruby version used:
This issue is consistent on two different platforms building the same content/config files (one's a build server - linux, one's my desktop - windows 10). Here are both ruby versions
windows: ruby 2.6.6p146 (2020-03-31 revision 67876) [x64-mingw32]
linux: ruby 2.5.1p57 (2018-03-29 revision 63029 [x86_64-linux-gnu]
Jekyll version used:
windows: jekyll 3.7.4
linux: jekyll 3.8.5
Cause/Resolution
The issue was due to the setting
indexing_batch_size
in quotes in _config.ymlBroken:
Working:
The text was updated successfully, but these errors were encountered: