Jump to content

IL-2 Stats Mod Bundle: Disco + Tanks + Enhancements + Global Aircraft Stats


Recommended Posts

=AD=uumembwa
Posted
7 minutes ago, =FEW=Revolves said:

You need to copy over the requirements.txt and requirements.in into your il2-stats folder included into your zip

It is in the zip? I don't find that files...:blush:

  • Thanks 1
=FEW=Revolves
Posted (edited)

Oh woops, you're right I forgot to put in the bundle, give me a minute

 

EDIT: Ok, done, they're in the new zip. I've also attached them to this post

reqs.zip

Edited by =FEW=Revolves
  • Like 1
=AD=uumembwa
Posted

I have error with update:


D:\il2_stats\run>cd ../

D:\il2_stats>".venv/Scripts/python.exe" -m pip install -U --quiet -r requirements.txt

D:\il2_stats>pause
Press any key to continue . . .

D:\il2_stats>cd src

D:\il2_stats\src>"../.venv/Scripts/python.exe" manage.py collectstatic --noinput --verbosity 0
Mod [mod_stats_by_aircraft] added to INSTALLED_APPS
Mod [mod_rating_by_type] added to INSTALLED_APPS
[mod_rating_by_type] Added module split_rankings
[mod_rating_by_type] Added module ammo_breakdown
[mod_rating_by_type] Added module ironman_stats
[mod_rating_by_type] Added module flight_time_bonus
[mod_rating_by_type] Added module undamaged_bailout_penalty
[mod_rating_by_type] Added module adjustable_bonuses_penalties
[mod_rating_by_type] Added module rearm_accuracy_workaround
[mod_rating_by_type] Added module bailout_accuracy_workaround
Traceback (most recent call last):
  File "manage.py", line 7, in <module>
    execute_from_command_line(sys.argv)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\management\__init__.py", line 364, in execute_from_command_line
    utility.execute()
  File "D:\il2_stats\.venv\lib\site-packages\django\core\management\__init__.py", line 338, in execute
    django.setup()
  File "D:\il2_stats\.venv\lib\site-packages\django\__init__.py", line 27, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "D:\il2_stats\.venv\lib\site-packages\django\apps\registry.py", line 116, in populate
    app_config.ready()
  File "D:\il2_stats\src\mod_stats_by_aircraft\apps.py", line 11, in ready
    from . import urls as new_urls
  File "D:\il2_stats\src\mod_stats_by_aircraft\urls.py", line 20, in <module>
    from . import views
  File "D:\il2_stats\src\mod_stats_by_aircraft\views.py", line 22, in <module>
    from .bullets_types import render_ammo_breakdown
  File "D:\il2_stats\src\mod_stats_by_aircraft\bullets_types.py", line 7, in <module>
    from sklearn.decomposition import PCA
  File "D:\il2_stats\.venv\lib\site-packages\sklearn\__init__.py", line 75, in <module>
    from .utils._show_versions import show_versions
  File "D:\il2_stats\.venv\lib\site-packages\sklearn\utils\_show_versions.py", line 12, in <module>
    from ._openmp_helpers import _openmp_parallelism_enabled
ImportError: DLL load failed: The specified module could not be found.

D:\il2_stats\src>pause
Press any key to continue . . .

 

=FEW=Revolves
Posted (edited)

Ah, strange it worked on my system. Apparently I generated the requirments.txt incorrectly, this might work better.

 

I think this one should work? Sorry for the hassle... I'll make a version without new requirments.txt if this one doesn't work.

requirements.txt

Edited by =FEW=Revolves
=AD=uumembwa
Posted

Still the same. 


D:\il2_stats\run>cd ../

D:\il2_stats>".venv/Scripts/python.exe" -m pip install -U --quiet -r requirements.txt

D:\il2_stats>pause
Press any key to continue . . .

D:\il2_stats>cd src

D:\il2_stats\src>"../.venv/Scripts/python.exe" manage.py collectstatic --noinput --verbosity 0
Mod [mod_stats_by_aircraft] added to INSTALLED_APPS
Mod [mod_rating_by_type] added to INSTALLED_APPS
[mod_rating_by_type] Added module split_rankings
[mod_rating_by_type] Added module ammo_breakdown
[mod_rating_by_type] Added module ironman_stats
[mod_rating_by_type] Added module flight_time_bonus
[mod_rating_by_type] Added module undamaged_bailout_penalty
[mod_rating_by_type] Added module adjustable_bonuses_penalties
[mod_rating_by_type] Added module rearm_accuracy_workaround
[mod_rating_by_type] Added module bailout_accuracy_workaround
Traceback (most recent call last):
  File "manage.py", line 7, in <module>
    execute_from_command_line(sys.argv)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\management\__init__.py", line 364, in execute_from_command_line
    utility.execute()
  File "D:\il2_stats\.venv\lib\site-packages\django\core\management\__init__.py", line 338, in execute
    django.setup()
  File "D:\il2_stats\.venv\lib\site-packages\django\__init__.py", line 27, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "D:\il2_stats\.venv\lib\site-packages\django\apps\registry.py", line 116, in populate
    app_config.ready()
  File "D:\il2_stats\src\mod_stats_by_aircraft\apps.py", line 11, in ready
    from . import urls as new_urls
  File "D:\il2_stats\src\mod_stats_by_aircraft\urls.py", line 20, in <module>
    from . import views
  File "D:\il2_stats\src\mod_stats_by_aircraft\views.py", line 22, in <module>
    from .bullets_types import render_ammo_breakdown
  File "D:\il2_stats\src\mod_stats_by_aircraft\bullets_types.py", line 7, in <module>
    from sklearn.decomposition import PCA
  File "D:\il2_stats\.venv\lib\site-packages\sklearn\__init__.py", line 75, in <module>
    from .utils._show_versions import show_versions
  File "D:\il2_stats\.venv\lib\site-packages\sklearn\utils\_show_versions.py", line 12, in <module>
    from ._openmp_helpers import _openmp_parallelism_enabled
ImportError: DLL load failed: The specified module could not be found.

D:\il2_stats\src>pause
Press any key to continue . . .

 

=FEW=Revolves
Posted

Did you run update.cmd?

=AD=uumembwa
Posted
1 minute ago, =FEW=Revolves said:

Ah, strange it worked on my system. Apparently I generated the requirments.txt incorrectly, this might work better.

 

I think this one should work? Sorry for the hassle... I'll make a version without new requirments.txt if this one doesn't work.

Maybe this is my mistake i forget to update to 1.2.55 version il2stats and install bundle over 1.2.54?

I try to copy 1.2.55 files (exept conf) and againe bundle over it but possible it was second mistake:crazy:

In first time i dont copy log and were was line with something about cashe after 

D:\il2_stats>".venv/Scripts/python.exe" -m pip install -U --quiet -r requirements.txt
1 minute ago, =FEW=Revolves said:

Did you run update.cmd?

it is log from update.cmd

=AD=uumembwa
Posted

For future, how to update correctly, to avoid mistakes?

=FEW=Revolves
Posted (edited)

 

6 minutes ago, NHK295M said:

For future, how to update correctly, to avoid mistakes?

 

You should copy over src/ over from main il2 stats first, i.e. what vaal posts, then copy over src/ (and in case of this update also requirments.txt + requirments.in), and then run the update.cmd.

 

I'm not sure if that error is related to the order by the way, it seems strange. Does it work now? I think I've found origin of error, it's due to bug in a library I was using which only happens on some systems.

 

7 minutes ago, super-truite said:

thx for the update. I have a little bug for a while now (not from this update). I have people that use a lot a team or tank type that have above 100% in the bottom sliders (coalitions/specialty). Example : http://aas-il2.com/en/tankman/227/UFO*/?tour=10

 

Oh yes, I'm aware of this bug, CountZero made a fix and it should work correctly in new version.

 

Fix is sadly not retroactive though :<, some sorties weren't being counted in total sortie counter basically.

Edited by =FEW=Revolves
  • Thanks 1
=AD=uumembwa
Posted

I think about... if i update Vaals 1.2.54 to 55 with my new conf(with mods lines) is it correct way? Maybe try to repair Vaals stat with old conf file and then update to bundle?

=FEW=Revolves
Posted (edited)

You should keep your config file as it was before, no need to change. Just copy over everything in vaal's zip except for the conf.ini, and then copy over the bundle, and then run update.cmd.

 

The bug might also be because of a bug in scikit. (https://stackoverflow.com/questions/59377573/importerror-dll-load-failed-while-importing-openmp-helpers-the-specified-modu )   Could you try running update.cmd after the above with this requriments.txt instead?

requirements.txt

Edited by =FEW=Revolves
=AD=uumembwa
Posted

I put old conf.ini and 54 correctly updated to 55, then i update to bundle with new conf.ini and reqs - that works?

=FEW=Revolves
Posted

Awesome! Good to hear :)

 

Thanks for debugging with me, I hate these stupid dependency bugs which are just different on different computers, I wish I had 10 different machines to test on sometimes ?

  • Like 1
=FEW=Revolves
Posted (edited)

Small bug fix update 1.7.4

 

Fixes three issues:

 

1. Defensive ammo breakdowns disappeared in the last update in old data due to a bug in the retroactive computation of the new dropdown lists. This is now filled in again.

2. Stats process could crash on old data in the same retroactive compute as in 1., if you used a rather old version of the ammo breakdown module.

3. Active pilots in a previous tour would not be correctly displayed, thanks to CountZero for finding + fixing this issue.

 

To update: You need to run update.cmd after pasting over the src/

Edited by =FEW=Revolves
super-truite
Posted

Hello Revolves, I have this error when updating after copy/pasting the src:

 

[mod_rating_by_type] Added module undamaged_bailout_penalty
Traceback (most recent call last):
  File "manage.py", line 7, in <module>
    execute_from_command_line(sys.argv)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\core\management\__init__.py", line 364, in execute_from_command_line
    utility.execute()
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\core\management\__init__.py", line 338, in execute
    django.setup()
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\__init__.py", line 27, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\apps\registry.py", line 116, in populate
    app_config.ready()
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\apps.py", line 11, in ready
    from . import urls as new_urls
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\urls.py", line 20, in <module>
    from . import views
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\views.py", line 22, in <module>
    from .bullets_types import render_ammo_breakdown
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\bullets_types.py", line 7, in <module>
    from sklearn.decomposition import PCA
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\sklearn\__init__.py", line 81, in <module>
    from . import __check_build  # noqa: F401
ImportError: cannot import name '__check_build'

 

super-truite
Posted

If I remove the line that imports __check_build in the __init__.py from sklearn in the virtual env (suggested on stackoverflow) I then get this error:

 

C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\src>"../.venv/Scripts/python.exe" manage.py migrate --noinput --verbosity 0
Mod [mod_stats_by_aircraft] added to INSTALLED_APPS
Mod [mod_rating_by_type] added to INSTALLED_APPS
[mod_rating_by_type] WARNING: No module selected. No modded content will be displayed!
Traceback (most recent call last):
  File "manage.py", line 7, in <module>
    execute_from_command_line(sys.argv)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\core\management\__init__.py", line 364, in execute_from_command_line
    utility.execute()
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\core\management\__init__.py", line 356, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\core\management\base.py", line 283, in run_from_argv
    self.execute(*args, **cmd_options)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\core\management\base.py", line 330, in execute
    output = self.handle(*args, **options)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\core\management\commands\migrate.py", line 83, in handle
    executor = MigrationExecutor(connection, self.migration_progress_callback)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\db\migrations\executor.py", line 20, in __init__
    self.loader = MigrationLoader(self.connection)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\db\migrations\loader.py", line 52, in __init__
    self.build_graph()
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\db\migrations\loader.py", line 275, in build_graph
    raise exc
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\db\migrations\loader.py", line 245, in build_graph
    self.graph.validate_consistency()
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\db\migrations\graph.py", line 261, in validate_consistency
    [n.raise_error() for n in self.node_map.values() if isinstance(n, DummyNode)]
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\db\migrations\graph.py", line 261, in <listcomp>
    [n.raise_error() for n in self.node_map.values() if isinstance(n, DummyNode)]
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\db\migrations\graph.py", line 104, in raise_error
    raise NodeNotFoundError(self.error_message, self.key, origin=self.origin)
django.db.migrations.exceptions.NodeNotFoundError: Migration mod_rating_by_type.0001_initial dependencies reference nonexistent parent node ('stats', '0035_score_ai_value')

 

=FEW=Revolves
Posted

 

1 hour ago, super-truite said:

If I remove the line that imports __check_build in the __init__.py from sklearn in the virtual env (suggested on stackoverflow) I then get this error:

 

C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\src>"../.venv/Scripts/python.exe" manage.py migrate --noinput --verbosity 0
Mod [mod_stats_by_aircraft] added to INSTALLED_APPS
Mod [mod_rating_by_type] added to INSTALLED_APPS
[mod_rating_by_type] WARNING: No module selected. No modded content will be displayed!
Traceback (most recent call last):
  File "manage.py", line 7, in <module>
    execute_from_command_line(sys.argv)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\core\management\__init__.py", line 364, in execute_from_command_line
    utility.execute()
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\core\management\__init__.py", line 356, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\core\management\base.py", line 283, in run_from_argv
    self.execute(*args, **cmd_options)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\core\management\base.py", line 330, in execute
    output = self.handle(*args, **options)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\core\management\commands\migrate.py", line 83, in handle
    executor = MigrationExecutor(connection, self.migration_progress_callback)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\db\migrations\executor.py", line 20, in __init__
    self.loader = MigrationLoader(self.connection)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\db\migrations\loader.py", line 52, in __init__
    self.build_graph()
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\db\migrations\loader.py", line 275, in build_graph
    raise exc
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\db\migrations\loader.py", line 245, in build_graph
    self.graph.validate_consistency()
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\db\migrations\graph.py", line 261, in validate_consistency
    [n.raise_error() for n in self.node_map.values() if isinstance(n, DummyNode)]
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\db\migrations\graph.py", line 261, in <listcomp>
    [n.raise_error() for n in self.node_map.values() if isinstance(n, DummyNode)]
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.48\il2_stats\.venv\lib\site-packages\django\db\migrations\graph.py", line 104, in raise_error
    raise NodeNotFoundError(self.error_message, self.key, origin=self.origin)
django.db.migrations.exceptions.NodeNotFoundError: Migration mod_rating_by_type.0001_initial dependencies reference nonexistent parent node ('stats', '0035_score_ai_value')

 

 

 

Just to check, you did also paste over the requirements.txt + .in?

 

That is a very strange error, it's not finding src/stats/migrations/0035_score_ai_value.py. Did you make sure to update to the latest il2 stats?

 

Also something seems to have gone wrong with the config file, it seems to be missing a modules=XXXX line.

 

super-truite
Posted
6 minutes ago, =FEW=Revolves said:

 

 

 

Just to check, you did also paste over the requirements.txt + .in?

 

That is a very strange error, it's not finding src/stats/migrations/0035_score_ai_value.py. Did you make sure to update to the latest il2 stats?

 

Also something seems to have gone wrong with the config file, it seems to be missing a modules=XXXX line.

 

Yes for the requirements.txt and .in files.
I did run update.cmd before copy/pasting your src folder + requirement files and ran update.cmd after
I commented one module out because I thought the bug was coming from it, will try again with the original config

=FEW=Revolves
Posted

OK could you download the latest update of il2 stats i.e. version 1.2.55 from here:

and copy over the src from it (making sure to backup the config.ini). After you've copied over vaal's update, then paste over the bundle and then run the update.cmd.

 

super-truite
Posted


I still have an issue 

[2021.08.14 12:02:00] missionReport(2021-08-14_08-05-02)[0] - exists in the DB
[2021.08.14 12:02:02] [mod_stats_by_aircraft]: Retroactively computing aircraft streaks. 20431 sorties left to process.
[2021.08.14 12:02:03] unexpected error
Traceback (most recent call last):
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\stats\management\commands\stats_whore.py", line 16, in handle
    stats_whore.main()
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\stats_whore.py", line 86, in main
    background_work_done = run_background_jobs()
  File "C:\Users\admin\AppData\Local\Programs\Python\Python35-32\lib\contextlib.py", line 30, in inner
    return func(*args, **kwds)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\background_jobs\run_background_jobs.py", line 52, in run_background_jobs
    work_done = __run_background_job(job, tour_cutoff)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\background_jobs\run_background_jobs.py", line 76, in __run_background_job
    job.compute_for_sortie(sortie)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\background_jobs\streaks_retro_compute.py", line 30, in compute_for_sortie
    process_streaks_and_best_sorties(bucket, sortie)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\aircraft_stats_compute.py", line 681, in process_streaks_and_best_sorties
    player=None,
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 380, in get
    self.model._meta.object_name
mod_stats_by_aircraft.aircraft_mod_models.DoesNotExist: AircraftBucket matching query does not exist.
[2021.08.14 12:02:03] Lock 76936304 released on C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\file.lock
Traceback (most recent call last):
  File "manage.py", line 7, in <module>
    execute_from_command_line(sys.argv)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\core\management\__init__.py", line 364, in execute_from_command_line
    utility.execute()
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\core\management\__init__.py", line 356, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\core\management\base.py", line 283, in run_from_argv
    self.execute(*args, **cmd_options)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\core\management\base.py", line 330, in execute
    output = self.handle(*args, **options)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\stats\management\commands\stats_whore.py", line 16, in handle
    stats_whore.main()
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\stats_whore.py", line 86, in main
    background_work_done = run_background_jobs()
  File "C:\Users\admin\AppData\Local\Programs\Python\Python35-32\lib\contextlib.py", line 30, in inner
    return func(*args, **kwds)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\background_jobs\run_background_jobs.py", line 52, in run_background_jobs
    work_done = __run_background_job(job, tour_cutoff)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\background_jobs\run_background_jobs.py", line 76, in __run_background_job
    job.compute_for_sortie(sortie)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\background_jobs\streaks_retro_compute.py", line 30, in compute_for_sortie
    process_streaks_and_best_sorties(bucket, sortie)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\aircraft_stats_compute.py", line 681, in process_streaks_and_best_sorties
    player=None,
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 380, in get
    self.model._meta.object_name
mod_stats_by_aircraft.aircraft_mod_models.DoesNotExist: AircraftBucket matching query does not exist.

 

=FEW=Revolves
Posted (edited)

Ok, seems I forgot to do a get_or_create instead of a get - I'll make a release with the fix.

 

You can replace the aircraft_stats_compute.py under src/mod_stats_by_aircraft/ with the one in the zip. Only changed file :<\

 

EDIT: No need to run update.cmd

 

EDIT 2: Ok you can also get it from the main page, I've updated the bundle.

aircraft_stats_compute.zip

Edited by =FEW=Revolves
super-truite
Posted

I still have this error :

Spoiler
[2021.08.14 12:18:41] [mod_stats_by_aircraft]: Retroactively computing aircraft streaks. 20431 sorties left to process.
[2021.08.14 12:18:43] unexpected error
Traceback (most recent call last):
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 464, in get_or_create
    return self.get(**lookup), False
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 380, in get
    self.model._meta.object_name
mod_stats_by_aircraft.aircraft_mod_models.DoesNotExist: AircraftBucket matching query does not exist.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
psycopg2.errors.NotNullViolation: null value in column "aircraft_id" violates not-null constraint
DETAIL:  Failing row contains (12003, NO_FILTER, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1500, 0, 0, 0, 0, 0, 0, 0, 0, {}, {}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, f, f, null, null, 0, 0, {"given": {"avg": {}, "totals": {}}, "received": {"avg": {}, "to..., 0, 0, 0, null, f, f, 0, null, 0, null, 0, null, 0, 0, 0, 0, null, 0, null, 0, null, f, f).


The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\stats\management\commands\stats_whore.py", line 16, in handle
    stats_whore.main()
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\stats_whore.py", line 86, in main
    background_work_done = run_background_jobs()
  File "C:\Users\admin\AppData\Local\Programs\Python\Python35-32\lib\contextlib.py", line 30, in inner
    return func(*args, **kwds)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\background_jobs\run_background_jobs.py", line 52, in run_background_jobs
    work_done = __run_background_job(job, tour_cutoff)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\background_jobs\run_background_jobs.py", line 76, in __run_background_job
    job.compute_for_sortie(sortie)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\background_jobs\streaks_retro_compute.py", line 30, in compute_for_sortie
    process_streaks_and_best_sorties(bucket, sortie)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\aircraft_stats_compute.py", line 681, in process_streaks_and_best_sorties
    player=None,
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 466, in get_or_create
    return self._create_object_from_params(lookup, params)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 509, in _create_object_from_params
    six.reraise(*exc_info)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\utils\six.py", line 686, in reraise
    raise value
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 500, in _create_object_from_params
    obj = self.create(**params)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 394, in create
    obj.save(force_insert=True, using=self.db)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\base.py", line 808, in save
    force_update=force_update, update_fields=update_fields)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\base.py", line 838, in save_base
    updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\base.py", line 924, in _save_table
    result = self._do_insert(cls._base_manager, using, fields, update_pk, raw)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\base.py", line 963, in _do_insert
    using=using, raw=raw)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\manager.py", line 85, in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 1079, in _insert
    return query.get_compiler(using=using).execute_sql(return_id)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\sql\compiler.py", line 1112, in execute_sql
    cursor.execute(sql, params)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\utils.py", line 94, in __exit__
    six.reraise(dj_exc_type, dj_exc_value, traceback)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\utils\six.py", line 685, in reraise
    raise value.with_traceback(tb)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
django.db.utils.IntegrityError: null value in column "aircraft_id" violates not-null constraint
DETAIL:  Failing row contains (12003, NO_FILTER, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1500, 0, 0, 0, 0, 0, 0, 0, 0, {}, {}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, f, f, null, null, 0, 0, {"given": {"avg": {}, "totals": {}}, "received": {"avg": {}, "to..., 0, 0, 0, null, f, f, 0, null, 0, null, 0, null, 0, 0, 0, 0, null, 0, null, 0, null, f, f).

[2021.08.14 12:18:43] Lock 64484528 released on C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\file.lock
Traceback (most recent call last):
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 464, in get_or_create
    return self.get(**lookup), False
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 380, in get
    self.model._meta.object_name
mod_stats_by_aircraft.aircraft_mod_models.DoesNotExist: AircraftBucket matching query does not exist.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
psycopg2.errors.NotNullViolation: null value in column "aircraft_id" violates not-null constraint
DETAIL:  Failing row contains (12003, NO_FILTER, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1500, 0, 0, 0, 0, 0, 0, 0, 0, {}, {}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, f, f, null, null, 0, 0, {"given": {"avg": {}, "totals": {}}, "received": {"avg": {}, "to..., 0, 0, 0, null, f, f, 0, null, 0, null, 0, null, 0, 0, 0, 0, null, 0, null, 0, null, f, f).


The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "manage.py", line 7, in <module>
    execute_from_command_line(sys.argv)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\core\management\__init__.py", line 364, in execute_from_command_line
    utility.execute()
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\core\management\__init__.py", line 356, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\core\management\base.py", line 283, in run_from_argv
    self.execute(*args, **cmd_options)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\core\management\base.py", line 330, in execute
    output = self.handle(*args, **options)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\stats\management\commands\stats_whore.py", line 16, in handle
    stats_whore.main()
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\stats_whore.py", line 86, in main
    background_work_done = run_background_jobs()
  File "C:\Users\admin\AppData\Local\Programs\Python\Python35-32\lib\contextlib.py", line 30, in inner
    return func(*args, **kwds)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\background_jobs\run_background_jobs.py", line 52, in run_background_jobs
    work_done = __run_background_job(job, tour_cutoff)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\background_jobs\run_background_jobs.py", line 76, in __run_background_job
    job.compute_for_sortie(sortie)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\background_jobs\streaks_retro_compute.py", line 30, in compute_for_sortie
    process_streaks_and_best_sorties(bucket, sortie)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\src\mod_stats_by_aircraft\aircraft_stats_compute.py", line 681, in process_streaks_and_best_sorties
    player=None,
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 466, in get_or_create
    return self._create_object_from_params(lookup, params)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 509, in _create_object_from_params
    six.reraise(*exc_info)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\utils\six.py", line 686, in reraise
    raise value
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 500, in _create_object_from_params
    obj = self.create(**params)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 394, in create
    obj.save(force_insert=True, using=self.db)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\base.py", line 808, in save
    force_update=force_update, update_fields=update_fields)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\base.py", line 838, in save_base
    updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\base.py", line 924, in _save_table
    result = self._do_insert(cls._base_manager, using, fields, update_pk, raw)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\base.py", line 963, in _do_insert
    using=using, raw=raw)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\manager.py", line 85, in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 1079, in _insert
    return query.get_compiler(using=using).execute_sql(return_id)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\models\sql\compiler.py", line 1112, in execute_sql
    cursor.execute(sql, params)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\utils.py", line 94, in __exit__
    six.reraise(dj_exc_type, dj_exc_value, traceback)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\utils\six.py", line 685, in reraise
    raise value.with_traceback(tb)
  File "C:\Users\admin\Documents\IL2Stats\il2_stats_1.2.50_simplel\il2_stats\.venv\lib\site-packages\django\db\backends\utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
django.db.utils.IntegrityError: null value in column "aircraft_id" violates not-null constraint
DETAIL:  Failing row contains (12003, NO_FILTER, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1500, 0, 0, 0, 0, 0, 0, 0, 0, {}, {}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, f, f, null, null, 0, 0, {"given": {"avg": {}, "totals": {}}, "received": {"avg": {}, "to..., 0, 0, 0, null, f, f, 0, null, 0, null, 0, null, 0, 0, 0, 0, null, 0, null, 0, null, f, f).

 

 

 

=FEW=Revolves
Posted (edited)

Something went horribly, horribly wrong ?

 

Database seems to have been corrupted or did not update properly. Do you have a backup you can retry it on? Or alternatively run the reset stats command.

 

EDIT: There seems to be an aircraft sortie without an aircraft

Edited by =FEW=Revolves
=AD=uumembwa
Posted

After small troubles on start bundle working correctly.

But in past when i made changes myself i have corrupt database couple times, i just reinstall all staff, stats with new db...

  • Upvote 1
=FEW=Revolves
Posted (edited)

 

57 minutes ago, NHK295M said:

After small troubles on start bundle working correctly.

But in past when i made changes myself i have corrupt database couple times, i just reinstall all staff, stats with new db...

 

Yup that seems to have work in super-truite's case, he reset the stats and let it run overnight and it seems all the missions went through. See http://aas-il2.com/en/missions/?tour=7

Edited by =FEW=Revolves
super-truite
Posted

Yeah, everything is fine after fresh reinstall! 

  • Upvote 1
  • 3 weeks later...
Posted

All looks working but waitress give such logs:

Spoiler

D:\il2_stats\run>cd ../src

D:\il2_stats\src>"../.venv/Scripts/python.exe" web.py
Mod [mod_stats_by_aircraft] added to INSTALLED_APPS
Mod [mod_rating_by_type] added to INSTALLED_APPS
[mod_rating_by_type] Added module split_rankings
[mod_rating_by_type] Added module ammo_breakdown
[mod_rating_by_type] Added module ironman_stats
[mod_rating_by_type] Added module flight_time_bonus
[mod_rating_by_type] Added module undamaged_bailout_penalty
[mod_rating_by_type] Added module adjustable_bonuses_penalties
[mod_rating_by_type] Added module rearm_accuracy_workaround
[mod_rating_by_type] Added module bailout_accuracy_workaround
Serving on http://NSFK2:80
--- Logging error ---
Traceback (most recent call last):
  File "D:\il2_stats\src\mod_rating_by_type\views.py", line 208, in __get_player
    player = query.order_by('-id')[0]
  File "D:\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 289, in __getitem__
    return list(qs)[0]
IndexError: list index out of range

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\base.py", line 187, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\base.py", line 185, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\contextlib.py", line 30, in inner
    return func(*args, **kwds)
  File "D:\il2_stats\src\mod_rating_by_type\views.py", line 129, in pilot
    player, profile = __get_player(profile_id, request, tour_id, cls)
  File "D:\il2_stats\src\mod_rating_by_type\views.py", line 214, in __get_player
    .filter(profile_id=profile_id, type='tankman').order_by('-id')[0])
  File "D:\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 289, in __getitem__
    return list(qs)[0]
IndexError: list index out of range

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\logging\handlers.py", line 72, in emit
    self.doRollover()
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\logging\handlers.py", line 173, in doRollover
    self.rotate(self.baseFilename, dfn)
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\logging\handlers.py", line 113, in rotate
    os.rename(source, dest)
PermissionError: [WinError 32] The process cannot access the file because it is being used by another process: 'D:\\il2_stats\\django.log' -> 'D:\\il2_stats\\django.log.1'
Call stack:
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\threading.py", line 882, in _bootstrap
    self._bootstrap_inner()
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\threading.py", line 914, in _bootstrap_inner
    self.run()
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\threading.py", line 862, in run
    self._target(*self._args, **self._kwargs)
  File "D:\il2_stats\.venv\lib\site-packages\waitress\task.py", line 86, in handler_thread
    task.service()
  File "D:\il2_stats\.venv\lib\site-packages\waitress\channel.py", line 350, in service
    task.service()
  File "D:\il2_stats\.venv\lib\site-packages\waitress\task.py", line 171, in service
    self.execute()
  File "D:\il2_stats\.venv\lib\site-packages\waitress\task.py", line 441, in execute
    app_iter = self.channel.server.application(environ, start_response)
  File "D:\il2_stats\.venv\lib\site-packages\dj_static.py", line 83, in __call__
    return self.application(environ, start_response)
  File "D:\il2_stats\.venv\lib\site-packages\dj_static.py", line 83, in __call__
    return self.application(environ, start_response)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\wsgi.py", line 157, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\base.py", line 124, in get_response
    response = self._middleware_chain(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\src\core\middleware.py", line 20, in middleware
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\src\stats\middleware.py", line 29, in middleware
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\src\mod_rating_by_type\middleware.py", line 14, in middleware
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\src\mod_rating_by_type\middleware.py", line 39, in middleware
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 43, in inner
    response = response_for_exception(request, exc)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 93, in response_for_exception
    response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 135, in handle_uncaught_exception
    extra={'status_code': 500, 'request': request},
Message: 'Internal Server Error: %s'
Arguments: ('/en/pilot/438/[DDR]d0mokun/',)
--- Logging error ---
Traceback (most recent call last):
  File "D:\il2_stats\src\mod_rating_by_type\views.py", line 208, in __get_player
    player = query.order_by('-id')[0]
  File "D:\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 289, in __getitem__
    return list(qs)[0]
IndexError: list index out of range

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\base.py", line 187, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\base.py", line 185, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\contextlib.py", line 30, in inner
    return func(*args, **kwds)
  File "D:\il2_stats\src\mod_rating_by_type\views.py", line 129, in pilot
    player, profile = __get_player(profile_id, request, tour_id, cls)
  File "D:\il2_stats\src\mod_rating_by_type\views.py", line 214, in __get_player
    .filter(profile_id=profile_id, type='tankman').order_by('-id')[0])
  File "D:\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 289, in __getitem__
    return list(qs)[0]
IndexError: list index out of range

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\logging\handlers.py", line 72, in emit
    self.doRollover()
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\logging\handlers.py", line 173, in doRollover
    self.rotate(self.baseFilename, dfn)
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\logging\handlers.py", line 113, in rotate
    os.rename(source, dest)
PermissionError: [WinError 32] The process cannot access the file because it is being used by another process: 'D:\\il2_stats\\django.log' -> 'D:\\il2_stats\\django.log.1'
Call stack:
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\threading.py", line 882, in _bootstrap
    self._bootstrap_inner()
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\threading.py", line 914, in _bootstrap_inner
    self.run()
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\threading.py", line 862, in run
    self._target(*self._args, **self._kwargs)
  File "D:\il2_stats\.venv\lib\site-packages\waitress\task.py", line 86, in handler_thread
    task.service()
  File "D:\il2_stats\.venv\lib\site-packages\waitress\channel.py", line 350, in service
    task.service()
  File "D:\il2_stats\.venv\lib\site-packages\waitress\task.py", line 171, in service
    self.execute()
  File "D:\il2_stats\.venv\lib\site-packages\waitress\task.py", line 441, in execute
    app_iter = self.channel.server.application(environ, start_response)
  File "D:\il2_stats\.venv\lib\site-packages\dj_static.py", line 83, in __call__
    return self.application(environ, start_response)
  File "D:\il2_stats\.venv\lib\site-packages\dj_static.py", line 83, in __call__
    return self.application(environ, start_response)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\wsgi.py", line 157, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\base.py", line 124, in get_response
    response = self._middleware_chain(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\src\core\middleware.py", line 20, in middleware
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\src\stats\middleware.py", line 29, in middleware
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\src\mod_rating_by_type\middleware.py", line 14, in middleware
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\src\mod_rating_by_type\middleware.py", line 39, in middleware
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 43, in inner
    response = response_for_exception(request, exc)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 93, in response_for_exception
    response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 135, in handle_uncaught_exception
    extra={'status_code': 500, 'request': request},
Message: 'Internal Server Error: %s'
Arguments: ('/en/pilot/438/[DDR]d0mokun/',)

 

 

=FEW=Revolves
Posted (edited)
18 hours ago, NHK295M said:

All looks working but waitress give such logs:

  Hide contents

D:\il2_stats\run>cd ../src

D:\il2_stats\src>"../.venv/Scripts/python.exe" web.py
Mod [mod_stats_by_aircraft] added to INSTALLED_APPS
Mod [mod_rating_by_type] added to INSTALLED_APPS
[mod_rating_by_type] Added module split_rankings
[mod_rating_by_type] Added module ammo_breakdown
[mod_rating_by_type] Added module ironman_stats
[mod_rating_by_type] Added module flight_time_bonus
[mod_rating_by_type] Added module undamaged_bailout_penalty
[mod_rating_by_type] Added module adjustable_bonuses_penalties
[mod_rating_by_type] Added module rearm_accuracy_workaround
[mod_rating_by_type] Added module bailout_accuracy_workaround
Serving on http://NSFK2:80
--- Logging error ---
Traceback (most recent call last):
  File "D:\il2_stats\src\mod_rating_by_type\views.py", line 208, in __get_player
    player = query.order_by('-id')[0]
  File "D:\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 289, in __getitem__
    return list(qs)[0]
IndexError: list index out of range

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\base.py", line 187, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\base.py", line 185, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\contextlib.py", line 30, in inner
    return func(*args, **kwds)
  File "D:\il2_stats\src\mod_rating_by_type\views.py", line 129, in pilot
    player, profile = __get_player(profile_id, request, tour_id, cls)
  File "D:\il2_stats\src\mod_rating_by_type\views.py", line 214, in __get_player
    .filter(profile_id=profile_id, type='tankman').order_by('-id')[0])
  File "D:\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 289, in __getitem__
    return list(qs)[0]
IndexError: list index out of range

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\logging\handlers.py", line 72, in emit
    self.doRollover()
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\logging\handlers.py", line 173, in doRollover
    self.rotate(self.baseFilename, dfn)
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\logging\handlers.py", line 113, in rotate
    os.rename(source, dest)
PermissionError: [WinError 32] The process cannot access the file because it is being used by another process: 'D:\\il2_stats\\django.log' -> 'D:\\il2_stats\\django.log.1'
Call stack:
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\threading.py", line 882, in _bootstrap
    self._bootstrap_inner()
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\threading.py", line 914, in _bootstrap_inner
    self.run()
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\threading.py", line 862, in run
    self._target(*self._args, **self._kwargs)
  File "D:\il2_stats\.venv\lib\site-packages\waitress\task.py", line 86, in handler_thread
    task.service()
  File "D:\il2_stats\.venv\lib\site-packages\waitress\channel.py", line 350, in service
    task.service()
  File "D:\il2_stats\.venv\lib\site-packages\waitress\task.py", line 171, in service
    self.execute()
  File "D:\il2_stats\.venv\lib\site-packages\waitress\task.py", line 441, in execute
    app_iter = self.channel.server.application(environ, start_response)
  File "D:\il2_stats\.venv\lib\site-packages\dj_static.py", line 83, in __call__
    return self.application(environ, start_response)
  File "D:\il2_stats\.venv\lib\site-packages\dj_static.py", line 83, in __call__
    return self.application(environ, start_response)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\wsgi.py", line 157, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\base.py", line 124, in get_response
    response = self._middleware_chain(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\src\core\middleware.py", line 20, in middleware
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\src\stats\middleware.py", line 29, in middleware
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\src\mod_rating_by_type\middleware.py", line 14, in middleware
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\src\mod_rating_by_type\middleware.py", line 39, in middleware
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 43, in inner
    response = response_for_exception(request, exc)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 93, in response_for_exception
    response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 135, in handle_uncaught_exception
    extra={'status_code': 500, 'request': request},
Message: 'Internal Server Error: %s'
Arguments: ('/en/pilot/438/[DDR]d0mokun/',)
--- Logging error ---
Traceback (most recent call last):
  File "D:\il2_stats\src\mod_rating_by_type\views.py", line 208, in __get_player
    player = query.order_by('-id')[0]
  File "D:\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 289, in __getitem__
    return list(qs)[0]
IndexError: list index out of range

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\base.py", line 187, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\base.py", line 185, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\contextlib.py", line 30, in inner
    return func(*args, **kwds)
  File "D:\il2_stats\src\mod_rating_by_type\views.py", line 129, in pilot
    player, profile = __get_player(profile_id, request, tour_id, cls)
  File "D:\il2_stats\src\mod_rating_by_type\views.py", line 214, in __get_player
    .filter(profile_id=profile_id, type='tankman').order_by('-id')[0])
  File "D:\il2_stats\.venv\lib\site-packages\django\db\models\query.py", line 289, in __getitem__
    return list(qs)[0]
IndexError: list index out of range

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\logging\handlers.py", line 72, in emit
    self.doRollover()
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\logging\handlers.py", line 173, in doRollover
    self.rotate(self.baseFilename, dfn)
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\logging\handlers.py", line 113, in rotate
    os.rename(source, dest)
PermissionError: [WinError 32] The process cannot access the file because it is being used by another process: 'D:\\il2_stats\\django.log' -> 'D:\\il2_stats\\django.log.1'
Call stack:
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\threading.py", line 882, in _bootstrap
    self._bootstrap_inner()
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\threading.py", line 914, in _bootstrap_inner
    self.run()
  File "C:\Users\pimpochka96\AppData\Local\Programs\Python\Python35-32\lib\threading.py", line 862, in run
    self._target(*self._args, **self._kwargs)
  File "D:\il2_stats\.venv\lib\site-packages\waitress\task.py", line 86, in handler_thread
    task.service()
  File "D:\il2_stats\.venv\lib\site-packages\waitress\channel.py", line 350, in service
    task.service()
  File "D:\il2_stats\.venv\lib\site-packages\waitress\task.py", line 171, in service
    self.execute()
  File "D:\il2_stats\.venv\lib\site-packages\waitress\task.py", line 441, in execute
    app_iter = self.channel.server.application(environ, start_response)
  File "D:\il2_stats\.venv\lib\site-packages\dj_static.py", line 83, in __call__
    return self.application(environ, start_response)
  File "D:\il2_stats\.venv\lib\site-packages\dj_static.py", line 83, in __call__
    return self.application(environ, start_response)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\wsgi.py", line 157, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\base.py", line 124, in get_response
    response = self._middleware_chain(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\src\core\middleware.py", line 20, in middleware
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\utils\deprecation.py", line 140, in __call__
    response = self.get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\src\stats\middleware.py", line 29, in middleware
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\src\mod_rating_by_type\middleware.py", line 14, in middleware
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\il2_stats\src\mod_rating_by_type\middleware.py", line 39, in middleware
    response = get_response(request)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 43, in inner
    response = response_for_exception(request, exc)
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 93, in response_for_exception
    response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
  File "D:\il2_stats\.venv\lib\site-packages\django\core\handlers\exception.py", line 135, in handle_uncaught_exception
    extra={'status_code': 500, 'request': request},
Message: 'Internal Server Error: %s'
Arguments: ('/en/pilot/438/[DDR]d0mokun/',)

 

 

 

Thanks for the bug report - you're right, it's nothing to be worried about. It happens when a wrong profile id is entered into a pilot link with no tour id, e.g. the following link will cause the error:

 

http://il2action.ddns.net/en/pilot/543151515151/NHK295M/

 

(The 543151515151 is the wrong number here)

 

Only problem seems to be that server gives a 500 error and writes to the log instead of a 404 error and not writing anything to log. I'll fix it in the next version, I think the bug also happens with only tank mod so I'll let CountZero know as well :<

 

Why the number there is wrong I don't know. There might be an incorrect link somewhere, but the links to pilot I've tested all seem to work correct. It is likely the result of a discord stats bot or a person putting in the wrong number in the url manually.

Edited by =FEW=Revolves
fixed bugged link
Posted
1 hour ago, =FEW=Revolves said:

It is likely the result of a discord stats bot

Oh yes i install bot in discord but not discover what him do yet:crazy:

Posted (edited)

OK I've released update 1.8.0 which  contains a new module that when activated makes new tours start as soon as a mission is won (undecided/ties do not start tours). Config name is mission_win_new_tour. This module is meant for servers which have few missions wins, where a mission win is the result of a long dynamic campaign, such as on Finnish.

 

It also fixes the bug NHK295M reported, and an issue where player tank kills were showing the incorrect score values in sortie logs.

 

To update: No need to run update.cmd, just paste over /src/.

Edited by =FEW=Revolves
  • Like 2
Posted

I've released a small update 1.8.1 which puts in the changes from Vaal's latest release + tank mod release. Only thing changed is the object.csv, since I already built in the other fixes from those patches in the last release.

 

If your stats installation is still working, there should be no reason to update. It just includes some new objects - the only one which should cause issues is the new SPAD variant, but that doesn't matter if you're running a WWII server.

 

To update: You need to run update.cmd after pasting over the src/

Posted (edited)

He has two very good tank sorties basically. You get a really high rating if you never die and get lots of points.

 

image.thumb.png.88678f4021a9167343fcff7e2dadef46.png

 

Neither I nor CountZero changed the formula - the formula to compute rating is

 

Score per hour * Score per death/capture * Score / 1000

 

So in =TrSh=Dad's case, he has two high scoring missions and no deaths and a very low hour count. In particular anything under 1 hour is rounded up to 1 hour, and if you have no death/capture it also gets rounded up to 1.

 

Score per hour = Score / 1 hour = Score

Score per death/capture = Score / 1 = Score

 

So the formula in his case simplifies to

 

Score^3 / 1000 = (758 + 632)^3 / 1000 = 2,685,619

 

 

--------------------

 

You can get above 2 million if you play a lot, but it will take quite a bit of time (this is what the "Score" term in the formula does). You'd probably need something like >50% of your sorties to be over 400 points to surpass 2 million tho in good time.

 

EDIT: I'd be happy to put in an alternative rating formula if you have an idea - I could also think of a few that give more points to a long streak of good performance instead of a short streak of amazing performance.

Edited by =FEW=Revolves
Posted

OK, now i understand, i don't know about this formula before. I think was mistake with points, but it all right with that explanation.

No i don't have alternate ideas, it's not bad, promote players who save their tank and plane and stay alive.

 

  • 2 weeks later...
=AD=uumembwa
Posted (edited)

I found this file, and edit it to solve this fact: some players(many, really:crazy:)  when got hit and some damage - leave mission or server, and have no disco penalty, only shotdown status and full points.

key,value,type
mod_undmg_bailout_score,100,int
mod_undmg_bailout_fair,20,int
mod_flight_time_bonus,60,int
mod_bonus_landed,100,pct
mod_bonus_winning_coal,25,pct
mod_bonus_in_flight,100,pct
mod_penalty_dead,75,pct
mod_penalty_captured,75,pct
mod_penalty_bailout,50,pct
mod_penalty_shotdown,20,pct
tank_bonus_landed,100,pct
tank_bonus_winning_coa,25,pct
tank_bonus_in_flight,100,pct
tank_bonus_in_service,100,pct
tank_penalty_dead,75,pct
tank_penalty_captured,75,pct
tank_penalty_bailout,50,pct
tank_penalty_shotdown,20,pct

BUT i found 2 problems:

tank_penalty_shotdown,20,pct - this line have no effect.

mod_penalty_shotdown,20,pct - this line effect for pilots and tankmans.

And all lines with "tank_" - have no effect, except "in service". Stats think in this case that tankmans - pilots.

 

Second problem - stats anyway count damage even if you after hit do complete repair. And if you win the mission - you have no time to repair. It is unfair, for my opinion.

How to make stats count repair? Why bonuses and penalties not split between tanks and planes?

How to count disco for tanks?

 

Edited by NHK295M
=FEW=Revolves
Posted (edited)
3 hours ago, NHK295M said:

BUT i found 2 problems:

tank_penalty_shotdown,20,pct - this line have no effect.

mod_penalty_shotdown,20,pct - this line effect for pilots and tankmans.

 

You're right, there is a bug where none of the tank penalties work, and it only uses "mod_" penalties in the current version. I'll make an update on the weekend which fixes the bug.

 

A bit of a mistake when putting together all the feature, my bad :<

 

3 hours ago, NHK295M said:

And all lines with "tank_" - have no effect, except "in service". Stats think in this case that tankmans - pilots.

 

All the bonuses except 'tank_bonus_landed' should work, since there is no "landing" event for tanks at the moment. That bonus is in there in case the log files change in the future.

 

3 hours ago, NHK295M said:

Second problem - stats anyway count damage even if you after hit do complete repair. And if you win the mission - you have no time to repair. It is unfair, for my opinion.

How to make stats count repair?

 

No way to fix sorry, game logs do not show repairs and also do not show rearms. So the parser can't know when a tank is repaired/rearmed. It is a problem that has been around since repair/rearm was added.

 

3 hours ago, NHK295M said:

Why bonuses and penalties not split between tanks and planes?

 

See above, will fix this bug on weekend for penalties.

 

3 hours ago, NHK295M said:

How to count disco for tanks?

 

It doesn't work already? OK, weird, I'll check it and fix on the weekend. Likely the normal disco logic doesn't work for tanks for some reason. Could you link to a sortie where someone disconnected? EDIT: It might be working correctly, since disco mod changes disconnects like that into shotdowns.

Edited by =FEW=Revolves
=AD=uumembwa
Posted
7 hours ago, =FEW=Revolves said:

It might be working correctly, since disco mod changes disconnects like that into shotdowns.

Ouh, it convert disco to shotdown? But this is i'm talking about, shotdown status it is way to save virtual live, how to change stats to convert disco to death?:crazy:

=FEW=Revolves
Posted (edited)

 

4 hours ago, NHK295M said:

Ouh, it convert disco to shotdown? But this is i'm talking about, shotdown status it is way to save virtual live, how to change stats to convert disco to death?:crazy:

 

Ah sorry, it's supposed to convert disco into shotdown + pilot death if there was recent damage, I'll take a look in a bit and see why that doesn't work

Edited by =FEW=Revolves
Posted (edited)

Disco dont work for tanks because its same as you just finish mission, there is no differance betwen them.

Tank player can finsh mission at any time, pilot cant, if pilot finish mission when in air thats only posible if he disconected, or server mission finished/crashed. Server realistic option - finishMissionIfLanded works only for airplanes, it dosent work for tanks, and that option controls if player can click on finish flight anytime he wonts. Game devs need to make this so it works for tanks also if they can or wont.

Thats why disco mod is neccesary for pilots, because in that case he would not give kill to guy who damaged him and he would not end his vlife/streak by disco. Thats why in disco mod that is fixed, and disco is turned in capture, as capture is same as death in vlife stats and points and K/d and so on...

For tanks, if mission is finished i already made it so last guy who damaged you gets kill, and if you are damaged your tank is destroyed, its not fair to also make player captured in that case, as by default player can finish his mission any time he wonts when in tank so every time player does that he would be captured, and thats not ok. Thats something game devs need to change if they wont, so tank player can finish his sortie only by bail out from tank or rtb to spawn point, and not how its now at any point in mission.

So if player in tank disconects or just finish mission its same, so thats why disco dont exist for tanks.

Edited by CountZero
  • Thanks 1

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...