]> Cypherpunks.ru repositories - nncp.git/commitdiff
Fix directories path fsync
authorSergey Matveev <stargrave@stargrave.org>
Tue, 6 Jul 2021 09:02:36 +0000 (12:02 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Tue, 6 Jul 2021 09:17:05 +0000 (12:17 +0300)
doc/news.ru.texi
doc/news.texi
src/nncp.go
src/toss.go

index 3fdf7534235118ae923c0099ded0ceeccfe01ae3..86b0ccc1d4ba151eef55a2d713e5c60da60fb088 100644 (file)
@@ -1,6 +1,15 @@
 @node Новости
 @section Новости
 
+@node Релиз 7.1.1
+@subsection Релиз 7.1.1
+@itemize
+
+@item
+Исправлено падение при fsync директорий после создания @file{.seen} файлов.
+
+@end itemize
+
 @node Релиз 7.1.0
 @subsection Релиз 7.1.0
 @itemize
index 4bcd03bd62e16377292e8347221c6b4423967b6a..731d8ef53d00f0a7aa0736f7270f7deedb947497 100644 (file)
@@ -3,6 +3,14 @@
 
 See also this page @ref{Новости, on russian}.
 
+@node Release 7_1_1
+@section Release 7.1.1
+@itemize
+
+@item
+Fixed failing directories fsync after @file{.seen} file creation.
+@end itemize
+
 @node Release 7_1_0
 @section Release 7.1.0
 @itemize
index d3ad2a73f5ae4c7907b9ab9b67618e2410b5028d..d2042c37f945c30af8c1f659ce5835f959fb9e81 100644 (file)
@@ -40,7 +40,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.`
 const Base32Encoded32Len = 52
 
 var (
-       Version string = "7.1.0"
+       Version string = "7.1.1"
 
        Base32Codec *base32.Encoding = base32.StdEncoding.WithPadding(base32.NoPadding)
 )
index 6f91b43d799cf87100c96dc69deaf219cdd3aa8e..69ad45536e2ba0427e2ba90b5b9d104e6b924301 100644 (file)
@@ -200,7 +200,7 @@ func jobProcess(
                        if doSeen {
                                if fd, err := os.Create(jobPath + SeenSuffix); err == nil {
                                        fd.Close()
-                                       if err = DirSync(filepath.Base(jobPath)); err != nil {
+                                       if err = DirSync(filepath.Dir(jobPath)); err != nil {
                                                ctx.LogE("rx-dirsync", les, err, func(les LEs) string {
                                                        return fmt.Sprintf(
                                                                "Tossing file %s/%s (%s): %s: dirsyncing",
@@ -393,7 +393,7 @@ func jobProcess(
                                if doSeen {
                                        if fd, err := os.Create(jobPath + SeenSuffix); err == nil {
                                                fd.Close()
-                                               if err = DirSync(filepath.Base(jobPath)); err != nil {
+                                               if err = DirSync(filepath.Dir(jobPath)); err != nil {
                                                        ctx.LogE("rx-dirsync", les, err, func(les LEs) string {
                                                                return fmt.Sprintf(
                                                                        "Tossing file %s/%s (%s): %s: dirsyncing",
@@ -518,7 +518,7 @@ func jobProcess(
                                if doSeen {
                                        if fd, err := os.Create(jobPath + SeenSuffix); err == nil {
                                                fd.Close()
-                                               if err = DirSync(filepath.Base(jobPath)); err != nil {
+                                               if err = DirSync(filepath.Dir(jobPath)); err != nil {
                                                        ctx.LogE("rx-dirsync", les, err, func(les LEs) string {
                                                                return fmt.Sprintf(
                                                                        "Tossing file %s/%s (%s): %s: dirsyncing",
@@ -607,7 +607,7 @@ func jobProcess(
                        if doSeen {
                                if fd, err := os.Create(jobPath + SeenSuffix); err == nil {
                                        fd.Close()
-                                       if err = DirSync(filepath.Base(jobPath)); err != nil {
+                                       if err = DirSync(filepath.Dir(jobPath)); err != nil {
                                                ctx.LogE("rx-dirsync", les, err, func(les LEs) string {
                                                        return fmt.Sprintf(
                                                                "Tossing file %s/%s (%s): %s: dirsyncing",