Commit Graph
4751 Commits
Author SHA1 Message Date
Enrico Giordani 566db8d155 [Setup] Updated the Windows release notes. 2015-09-07 18:32:45 +02:00
Enrico Giordani 0b89a20a9b [Setup] Added maxheap settings along with the maxmemory settings.
[Setup] Added a checkbox to choose whether to add the install dir to PATH.
2015-09-07 18:22:05 +02:00
Enrico Giordani e5fbc9cbcf [Fix] Write errors to the Event Log during startup.
Use the Event Log as error reporting system during startup while logging to
file is not yet enabled.
Some code refactoring.
2015-09-07 18:22:04 +02:00
Enrico Giordani 777b56b0d0 [Setup] MSI: added max memory config dialog.
[Setup] MSI: Redis installation folder added to the PATH environment variable.
2015-09-07 18:22:04 +02:00
Enrico Giordani e290b6e9e6 [Setup] Increased the version number from 2.8.2102 to 2.8.2103. 2015-09-07 18:22:03 +02:00
Enrico Giordani 5030fc664d [Fix] Redis crashes at startup.
This commit fixes the problem reported by:
https://github.com/MSOpenTech/redis/issues/304
https://github.com/MSOpenTech/redis/issues/306
A previous commit that fixed a socketstate leak exposed another existing bug:
if FDAPI_AcceptEx() fails the socketstate is accessed after the socket has
already been closed and the socketstate memory has been released, causing
a heap corruption exception .

[Fix] Improved error handlingin WSIOCP_Listen().
2015-09-07 18:22:03 +02:00
Enrico Giordani 9c3a329e6a [Fix] Remove temp file after AOF rewrite error. 2015-09-07 18:22:02 +02:00
Enrico Giordani e4127b84aa [Fix] Close the file handle after truncating a file. 2015-09-07 18:22:02 +02:00
Enrico Giordani b026f3c811 [Fix] replace_rename() had an infinite loop upon error. 2015-09-07 18:21:40 +02:00
Enrico Giordani fd1d72e8fd [Setup] Updated version number for NuGet and Chocolatey packages. win-2.8.2102 2015-08-25 15:41:46 +02:00
Enrico Giordani 080eb7d774 [Setup] Updated the Windows release notes. 2015-08-25 13:55:36 +02:00
zeliard bb2728544d fixed some win32 potential bugs 2015-08-25 12:04:10 +02:00
Enrico Giordani 77731f1529 [Setup] Updated the release notes. 2015-08-24 17:49:56 +02:00
Enrico Giordani 779942d789 [Cleanup] Code refactoring.
Renamed functions and variable, removed unused code, changed API replacement
for WSA functions:
 - Changed the aeWin prefix to WSAIOCP_.
 - Changed WSA functions from been remapped to be named with the FDAPI_ prefix.
 - Removed unused API replacements.
Changed comments.
Code formatting.
2015-08-24 17:34:05 +02:00
Enrico Giordani 60899dd617 [Cleanup] Replaced DebugBreak with ASSERT. 2015-08-23 18:20:08 +02:00
Enrico Giordani 24c8274863 [Code optimization] Socket flags moved to socket info structure. 2015-08-23 18:07:34 +02:00
Enrico Giordani a37b2b51b0 [Fix & Cleanup] Socket state moved from aeApiState to RFDMap.
Redesigned the way the socket state is managed.
The socket state was saved in a dedicated linked list in the aeApiState
structure, the list has been removed and the socket state is saved along
the socket descriptor in RFDMap::RFDToSocketInfoMap.
The socket state methods (get and delete) have been moved out from the
ae_wsiocp.c file and put in win32_wsiocp.c.
Some functions have been renamed to match the actual functionality.
2015-08-23 17:48:50 +02:00
Enrico Giordani c86c2fa546 [Test] Increased waiting time while/before checking condition. 2015-08-23 17:43:04 +02:00
Enrico Giordani 202df6f47f [Fix] Making sure getNextRFDAvailable never reaches MAX_INT.
[Comment] Fixed typo
[Log] Changed ASSERT message.
2015-08-23 10:31:26 +02:00
Enrico Giordani 42dc6ad170 [Fix] Sockets not properly closed.
Sockets were not properly closed/released, causing the server to run out of
connections or reaching the maxclient limit.
Removed aeWinCloseSocket() in favor of the posix close() replacement.
This commit fixes:
 - https://github.com/MSOpenTech/redis/issues/294
 - https://github.com/MSOpenTech/redis/issues/282
2015-08-21 15:13:18 +02:00
Enrico Giordani 9f03a5fdda [Test] Added a Windows-specific regression test.
In a master-slave configuration, if the master has AUTH on and the slave
connects without AUTH, after every slave attempt to connect, the master
doesn't close the client connection and will eventually reach the maxclients
limit.
2015-08-21 15:13:17 +02:00
Enrico Giordani 3d28380bf5 [Test] Gitignore log file. 2015-08-21 15:13:17 +02:00
Enrico Giordani 885900ac2d [Cleanup] Code refactoring. 2015-08-21 15:13:16 +02:00
Enrico Giordani bdeb4b420c [Debug] Disabled command line arguments print out. 2015-08-21 15:13:16 +02:00
Enrico Giordani 4ec26f04f4 [Fix] Socket state flags were not saved. 2015-08-21 15:13:15 +02:00
Enrico Giordani db22e8bad8 [Setup] Updated version number and release notes. 2015-08-21 15:13:15 +02:00
Enrico Giordani b2541a6b55 [Cleanup] Removed code that was commented out. 2015-08-21 15:13:14 +02:00
Enrico Giordani d6090bf89f [Portability] Explicit type casting. 2015-08-21 15:13:14 +02:00
Enrico Giordani f756dba365 [Cleanup] Removed comment. 2015-08-21 15:13:13 +02:00
Enrico Giordani 6d988b3d8d [Setup] NuGet description doesn't support Markdown. 2015-08-21 15:13:13 +02:00
Enrico Giordani 4777e1c202 [Cleanup] Change methods name and signature.
"SocketState" was used to indicate the socket flags, renamed ahead of moving the
SocketState from the aeApiState structure to the socket map in the RFDMap class.
2015-08-21 15:13:12 +02:00
Enrico Giordani 37ad252536 [Fix] Redis Server stops accepting connections.
This commit fixes:
 - https://github.com/MSOpenTech/redis/issues/259
 - https://github.com/MSOpenTech/redis/issues/281
After a client connection fails with error "Accepting client connection: accept:
Unknown error" the server stops accepting new client connections because another
accept isn't queued.
2015-08-21 15:11:49 +02:00
Enrico Giordani 13d98fc861 [Setup] NuGet description doesn't support Markdown. 2015-08-21 15:11:48 +02:00
Enrico Giordani aba1c6e7f5 [Fix] AOF rewrite failure.
This commit fixes https://github.com/MSOpenTech/redis/issues/275
Credits to @ppanyukov for investigating the bug.
An existing fix was not working in Release mode because the compiler
optimization was removing the code that forces the VEH to map the memory page.

Conflicts:
	src/Win32_Interop/Win32_fdapi_crt.cpp
	src/Win32_Interop/Win32_fdapi_crt.h
2015-08-21 15:08:25 +02:00
Enrico Giordani 08bde3edf6 [Setup] Updated version number in appveyor.yml. win-2.8.2101 2015-07-15 15:30:12 +02:00
Enrico Giordani ee99b82f45 [Fix] Memory was not properly released at the end of the memory test.
[Change] Hard-coded memory test loops changed from 50 to 5.
[Setup] Updated the release notes.
2015-07-15 14:06:31 +02:00
Enrico Giordani 965b6e0311 [Setup] Updated the release notes. 2015-07-15 13:07:28 +02:00
Enrico Giordani 3818822373 [Setup] Nuget/Chocolatey packages update.
[Change] Updated the ReleasePackagingTool to include all .pdb files.
[Change] Updated the nuget/chocolatey templates to conform with the guidelines:
         - Replaced the Redis logo with the Redis icon.
         - Changed the package title.
         - Changed the package description.
         - Removed the package summary to use a short version of the decription
           instead.
 [Change] Updated license.txt to 2015.
2015-07-15 13:07:28 +02:00
Enrico Giordani 97461656ed [Fix] Bug report fixes.
[Fix] If an exception occured while building the server info data, the footer
      was not logged.
[Fix] Uncommented the ServerInfo() call that was commented out by mistake in a
      previous commit.
2015-07-15 13:07:27 +02:00
Enrico Giordani 5e905ce07e [Setup] Updated the release number and the release notes (2.8.2101). 2015-07-15 13:07:27 +02:00
Enrico Giordani 7b920de231 [Fix] Added API mapping for fclose() and fileno().
This fix resolves issue #235 https://github.com/MSOpenTech/redis/issues/235
2015-07-15 13:07:26 +02:00
Enrico Giordani 2b7dc05763 [Fix] Memory corruption. Merged fix from Azure fork (by Mike Montwill).
"in-kernel writes don't always observe cow pages correctly".
https://github.com/Azure/redis/commit/69c780f8a62e6a96c3f64adf23004beac7a90abf
2015-07-15 13:07:26 +02:00
Enrico Giordani f9660d1c72 [Fix] Socket blocking state.
Changed the logic to make sure the returned value is initialized.
2015-07-15 13:07:25 +02:00
Enrico Giordani 24d0115bd6 [Cleanup] Code cleanup: variables initialization and validation. 2015-07-15 13:07:25 +02:00
Enrico Giordani 2b502cfb16 [Change] Rolled back "Workaround for getpeername() issue".
The workaround https://github.com/MSOpenTech/redis/commit/0f79d723965a46e59dfbd239ad66c2d7c4bf5eeb is not anymore required since the root problem has been fixed (in another commit).
2015-07-15 13:07:24 +02:00
Enrico Giordani 8746390c28 [Change] Removed the forkedProcessReady event.
The event was used to wait for the child process to map the memory, but it's
not required since the memory is already VirtualProtect(ed).
2015-07-15 13:07:24 +02:00
Enrico Giordani 14d318dfe5 [Fix] aeWinQueueAccept wrong return value.
[Change] Variable name acceptsocket changed to acceptfd.
2015-07-15 13:07:23 +02:00
Enrico Giordani 5a00959c87 [Cleanup] Tabs->spaces, formatting. 2015-07-15 13:07:23 +02:00
Enrico Giordani a37f64953b [Change] Removed extra space allocated at the end of the mmap file.
[Log] Improved error messages.
2015-07-15 13:07:22 +02:00
Enrico Giordani c3495c8f3a [Fix] RFDMap was not thread safe.
[Cleanup] Removed unused/commented out code, tabs->spaces.
2015-07-15 13:07:22 +02:00