Andrey Prygunkov
adf7ec225b
#362 : save ParSetId into disk state
...
That’s needed to make direct rename work properly if the program was
reloaded in the middle of direct rename download process.
2019-01-17 19:45:59 +01:00
Andrey Prygunkov
d15722c72d
#595 : save original file name into disk state
2019-01-17 19:42:41 +01:00
Andrey Prygunkov
0776c6b057
#595 : check original file names when looking for splitted fragments
2019-01-17 00:28:55 +01:00
Andrey Prygunkov
491d816bff
#591 : save only changed queue data during downloading
...
This is a speed optimisation for large queue.
2019-01-14 17:53:51 +01:00
Andrey Prygunkov
b0356d88d6
#591 : use local buffer for formatting during saving disk state
...
This improves performance with large queue by avoiding many memory
allocations.
2019-01-12 21:47:56 +01:00
Andrey Prygunkov
fbfa793b20
#591 : improved error reporting for queue disk state corruption
2019-01-12 19:48:44 +01:00
Federico Cuello
c93eb2087f
fix compile warning: -Wreorder
...
Declare variables in the right order to avoid this warning.
2018-12-21 15:06:50 +01:00
Andrey Prygunkov
f842a19544
#541 : preserve logs for URL items
...
do not discard (cleanup) logs of URLs when loading disk-state
2018-07-24 22:47:39 +02:00
Andrey Prygunkov
5e15677218
#541 : better duplicate handling of urls
2018-07-12 21:19:09 +02:00
Andrey Prygunkov
57f932cfab
#438 : hibernating all file infos in one large disk state file
...
to greatly improve startup time
2017-09-02 11:36:38 +02:00
Andrey Prygunkov
8f803c2f21
#438 : great speed optimization for queue-dir cleanup
2017-09-02 11:34:07 +02:00
Andrey Prygunkov
160b274ce8
#371 : new module "DirectUnpack"
...
without implementation and with a new failing unit test.
2017-05-03 21:30:35 +02:00
Andrey Prygunkov
fc1847588d
#362 : save and restore disk state for direct rename
2017-04-30 00:10:17 +02:00
Andrey Prygunkov
62b3d47b43
#362 : redesigned renaming
...
Spread RenameInfo into FileInfo and NzbInfo to make the state easier to
save on disk
2017-04-28 23:55:41 +02:00
Andrey Prygunkov
eaaa943af3
#362 : save new filenames into disk state
2017-04-21 20:33:23 +02:00
Andrey Prygunkov
3ac91a4bb6
#362 : fixed restoring of partial state
...
when direct write was disabled
2017-04-16 15:01:34 +02:00
Andrey Prygunkov
cac25ed290
#291 : distinguishing pp-stages par-renaming and rar-renaming
...
to better handling temporary pause.
2016-10-15 13:37:34 +02:00
Andrey Prygunkov
db7bc4314f
#288 : rar-rename as a separate post-processing stage
...
Made rar-rename a separate post-processing stage which runs after
par-repair, in order to restore archive file names after possible
repair stage (which could rename files back to obfuscated names if
rar-rename were run before par-repair).
2016-09-28 22:22:18 +02:00
Andrey Prygunkov
51880a60e9
fixed #235 : very long log messages were not read properly from disk
2016-07-02 21:01:36 +02:00
Andrey Prygunkov
18d89435e4
#205 : fixed: nzb-log was deleted
...
… just before adding to history
2016-05-16 12:41:57 +02:00
Andrey Prygunkov
a1e945661b
#205 : improved handling of queue cleanup
...
Also removed option “ParCleanupQueue” as it is not needed anymore with
reworked state handling.
2016-05-15 19:42:54 +02:00
Andrey Prygunkov
2190eec25a
#121 : do not delete completed state files
2016-05-14 13:00:32 +02:00
Andrey Prygunkov
43f25587d2
#205 : improved file state handling
...
Better handling of all cases: manual delete, health delete, retry
failed, download remaining with ContinuePartial=on/off and
DirectWrite=on/off.
2016-05-12 23:22:06 +02:00
Andrey Prygunkov
f08d3918dc
#205 : retry for deleted downloads too
...
Commands “Retry failed articles” and “Download remaining files“ now
work for deleted downloads too (including deleted by health check).
2016-05-09 19:17:17 +02:00
Andrey Prygunkov
8c4d8cef1a
#121 : queue directory cleanup on program start
...
Automatically removing orphaned diskstate files from QueueDir:
- file info state;
- file progress state;
- file completion state;
- nzb-log.
2016-04-28 22:09:56 +02:00
Andrey Prygunkov
8de5461759
#207 : separate disk state files for queue and history
2016-04-23 21:33:06 +02:00
Andrey Prygunkov
cb20dfb547
#205 : corrected file time info for retried files
2016-04-23 21:13:33 +02:00
Andrey Prygunkov
857ada54ea
#121 : unified disk state management
...
… to use StateDiskFile for all operations.
2016-03-23 19:29:57 +01:00
Andrey Prygunkov
1a74695126
#148 : unique smart pointers for download containers
2016-03-11 22:49:14 +01:00
Andrey Prygunkov
35049d436e
#183 : dropped support for old queue disk state formats
...
(v12 or older)
2016-03-10 21:47:38 +01:00
Andrey Prygunkov
069350eaa3
#168 : unique smart pointers for download objects
...
… before they are put into containers.
2016-03-09 23:28:37 +01:00
Andrey Prygunkov
f3f7fbd0de
#176 : updated copyright notice in source files
...
- added link to http://nzbget.net ;
- replaced FSF Post address with a web link;
- removed unusable subversion-tags;
- updated year.
2016-03-01 19:45:07 +01:00
Andrey Prygunkov
831c73d28d
#176 : removed aligning of class member names
2016-02-29 19:31:40 +01:00
Andrey Prygunkov
ff69fbbeb9
#136 : avoid double slashes in paths
...
Extra long path names are not normalized automatically by Windows and
therefore must contain paths in canonical form.
2016-01-23 14:23:53 +01:00
Andrey Prygunkov
0ee644d252
#154 : use lambdas when deleting elements from containers
2016-01-14 19:42:49 +01:00
Andrey Prygunkov
ef4a72d383
#152 : eliminated dereferences in for-range loops using “begin()” and “end()” template functions in “nzbget.h”
2016-01-13 19:44:40 +01:00
Andrey Prygunkov
b32b4c0691
#152 : for-range loops with iterators
2016-01-12 00:30:17 +01:00
Andrey Prygunkov
32400a810f
#143 : store download objects directly in containers
...
…where possible.
2016-01-08 22:29:44 +01:00
Andrey Prygunkov
6885082299
#143 : store volume stat objects directly in container
2016-01-05 18:57:15 +01:00
Andrey Prygunkov
476dae8c1e
#143 : store feed objects directly in containers
2016-01-04 22:43:56 +01:00
Andrey Prygunkov
81f2c7825d
#143 : store Message directly in container
...
…instead of pointer to object.
2016-01-03 20:49:30 +01:00
Andrey Prygunkov
69c995359b
#126 : time formatting functions
2016-01-01 15:56:53 +01:00
Andrey Prygunkov
3e89638b39
refactor: replaced "time(NULL)" with an utility function
2016-01-01 14:57:48 +01:00
Andrey Prygunkov
04c3e0d263
#138 : use "nullptr" instead of "NULL"
2015-12-30 16:35:07 +01:00
Andrey Prygunkov
c68ba306fe
#131 : using enum for file mode in function DiskFile::Open
2015-12-26 17:19:12 +01:00
Andrey Prygunkov
6840ef4439
#131 : routing a few more remaining function calls through module "FileSystem"
...
“rename”, “remove” and “rmdir”.
2015-12-25 22:55:46 +01:00
Andrey Prygunkov
dce6f0c9a3
#131 : new class DiskFile to wrap "FILE*"-functions
2015-12-25 18:11:50 +01:00
Andrey Prygunkov
eae6fd5d91
#131 : wrapped function "remove" into module FileSystem
...
under name “DeleteFile”.
2015-12-24 18:34:15 +01:00
Andrey Prygunkov
321c7efa41
#130 : moved parts from module "Util" into new module "FileSystem"
2015-12-22 22:01:03 +01:00
Andrey Prygunkov
d87d6ac2ac
#126 : using CString for ref-parameters and return values
...
1) for parameters use references to CString instead of pointers to
buffers;
2) when returning strings use CString instead of pointer to char buffer
which caller needs to deallocate;
3) use BString even more.
2015-12-20 16:27:01 +01:00