#11
|
|||
|
|||
Re: parallel mounting for ZFS filesystem
Eugene Grosbein написал(а) к Alex Korchmar в May 19 11:24:15 по местному времени:
05 мая 2019, воскресенье, в 21:11 NOVT, Alex Korchmar написал(а): EG>> Всё там отключается. Выставляешь mountpoint=legacy нужным fs AK> "главное - ничего не чинить!" (c) Чинить надо то, что сломано. Обещал ли там кто-то детерминированность - ещё вопрос. Eugene -- Смотри, но не смей трогать --- slrn/1.0.3 (FreeBSD) |
#12
|
|||
|
|||
Re: parallel mounting for ZFS filesystem
Alex Korchmar написал(а) к Eugene Grosbein в May 19 06:59:25 по местному времени:
From: Alex Korchmar <noreply@linux.e-moe.ru> Eugene Grosbein <Eugene.Grosbein@f1.n5006.z2.fidonet.org> wrote: EG>>> Всё там отключается. Выставляешь mountpoint=legacy нужным fs AK>> "главное - ничего не чинить!" (c) EG> Чинить надо то, что сломано. zfs не предполагает использования fstab (которого у solaris вообще двадцать лет как нет) - на что явно намекает слово "legacy". Соответственно - должна уметь обходиться без него. обещал там кто-то или оно случайно работало правильно - совершенно никому неинтересно. Сломали ненужным улучшизмом - чините. но, полагаю, ответ где-то там же где отсутствующий fsck - "а там, откуда мы копипастим без разбору, оно так же поломано". ждем поломанного планировщика и write amplification x8 ? "а чо, вон в линупсе так же - никто ж не жалуется!" > Alex --- ifmail v.2.15dev5.4 |
#13
|
|||
|
|||
Re: parallel mounting for ZFS filesystem
Eugene Grosbein написал(а) к Alex Korchmar в May 19 12:10:11 по местному времени:
06 мая 2019, понедельник, в 04:59 NOVT, Alex Korchmar написал(а): EG>>>> Всё там отключается. Выставляешь mountpoint=legacy нужным fs AK>>> "главное - ничего не чинить!" (c) EG>> Чинить надо то, что сломано. AK> zfs не предполагает использования fstab (которого у solaris вообще двадцать AK> лет как нет) AK> - на что явно намекает слово "legacy". Соответственно - должна уметь обходиться AK> без него. Не бывает ZFS в вакууме. ZFS в FreeBSD допускает использование fstab. AK> обещал там кто-то или оно случайно работало правильно - совершенно никому AK> неинтересно. Сломали ненужным улучшизмом - чините. Сначала нужно найти в спецификации, а было ли что ломать изначально. Eugene --- slrn/1.0.3 (FreeBSD) |
#14
|
|||
|
|||
parallel mounting for ZFS filesystem
Slawa Olhovchenkov написал(а) к Eugene Grosbein в May 19 11:00:34 по местному времени:
Нello Eugene! 06 May 19, Eugene Grosbein writes to Alex Korchmar: AK>> обещал там кто-то или оно случайно работало правильно - совершенно AK>> никому неинтересно. Сломали ненужным улучшизмом - чините. EG> Сначала нужно найти в спецификации, а было ли что ломать изначально. в спецификации есть ARC алгоритм. его сломали. и что дальше? ... Помни! Каждая нелегальная копия - лишний гвоздь в гроб капитализма. --- GoldED+/BSD 1.1.5-b20110223-b20110223 |
#15
|
|||
|
|||
Re: parallel mounting for ZFS filesystem
Alex Korchmar написал(а) к Eugene Grosbein в May 19 11:03:32 по местному времени:
From: Alex Korchmar <noreply@linux.e-moe.ru> Eugene Grosbein <Eugene.Grosbein@f1.n5006.z2.fidonet.org> wrote: EG> Не бывает ZFS в вакууме. ZFS в FreeBSD допускает использование fstab. допускает - в качестве legacy костыля. EG> Сначала нужно найти в спецификации, а было ли что ломать изначально. спецификации не существует (если и существовала - орацл ей не поделится) существует устоявшееся поведение, и общая ориентация zfs на работу без милых костыликов и подпорочек там, где без них вполне прекрасно можно обойтись. Причем до рукожопиков - все работало. > Alex P.S. про write amplification "спецификация" точно ничего не говорит. быстрее портируйте. --- ifmail v.2.15dev5.4 |
#16
|
|||
|
|||
Re: parallel mounting for ZFS filesystem
Eugene Grosbein написал(а) к Slawa Olhovchenkov в May 19 17:05:06 по местному времени:
06 мая 2019, понедельник, в 09:00 NOVT, Slawa Olhovchenkov написал(а): AK>>> обещал там кто-то или оно случайно работало правильно - совершенно AK>>> никому неинтересно. Сломали ненужным улучшизмом - чините. EG>> Сначала нужно найти в спецификации, а было ли что ломать изначально. SO> в спецификации есть ARC алгоритм. его сломали. и что дальше? А дай ссылочку на спецификацию. Eugene -- Научить не кланяться авторитетам, а исследовать их и сравнивать их поучения с жизнью. Научить настороженно относиться к опыту бывалых людей, потому что жизнь меняется необычайно быстро. --- slrn/1.0.3 (FreeBSD) |
#17
|
|||
|
|||
Re: parallel mounting for ZFS filesystem
Eugene Grosbein написал(а) к Alex Korchmar в May 19 17:06:08 по местному времени:
06 мая 2019, понедельник, в 09:03 NOVT, Alex Korchmar написал(а): EG>> Сначала нужно найти в спецификации, а было ли что ломать изначально. AK> спецификации не существует (если и существовала - орацл ей не поделится) AK> существует устоявшееся поведение, и общая ориентация zfs на работу без милых AK> костыликов и подпорочек там, где без них вполне прекрасно можно обойтись. AK> Причем до рукожопиков - все работало. Ну то есть работало без гарантий. Как там говорится, AS IS. Eugene --- slrn/1.0.3 (FreeBSD) |
#18
|
|||
|
|||
parallel mounting for ZFS filesystem
Slawa Olhovchenkov написал(а) к Eugene Grosbein в May 19 13:13:38 по местному времени:
Нello Eugene! 06 May 19, Eugene Grosbein writes to Slawa Olhovchenkov: AK>>>> обещал там кто-то или оно случайно работало правильно - совершенно AK>>>> никому неинтересно. Сломали ненужным улучшизмом - чините. EG>>> Сначала нужно найти в спецификации, а было ли что ломать изначально. SO>> в спецификации есть ARC алгоритм. его сломали. и что дальше? EG> А дай ссылочку на спецификацию. /* * DVA-based Adjustable Replacement Cache * * While much of the theory of operation used here is * based on the self-tuning, low overhead replacement cache * presented by Megiddo and Modha at FAST 2003, there are some * significant differences: * * 1. The Megiddo and Modha model assumes any page is evictable. * Pages in its cache cannot be "locked" into memory. This makes * the eviction algorithm simple: evict the last page in the list. * This also make the performance characteristics easy to reason * about. Our cache is not so simple. At any given moment, some * subset of the blocks in the cache are un-evictable because we * have handed out a reference to them. Blocks are only evictable * when there are no external references active. This makes * eviction far more problematic: we choose to evict the evictable * blocks that are the "lowest" in the list. * * There are times when it is not possible to evict the requested * space. In these circumstances we are unable to adjust the cache * size. To prevent the cache growing unbounded at these times we * implement a "cache throttle" that slows the flow of new data * into the cache until we can make space available. * * 2. The Megiddo and Modha model assumes a fixed cache size. * Pages are evicted when the cache is full and there is a cache * miss. Our model has a variable sized cache. It grows with * high use, but also tries to react to memory pressure from the * operating system: decreasing its size when system memory is * tight. * * 3. The Megiddo and Modha model assumes a fixed page size. All * elements of the cache are therefore exactly the same size. So * when adjusting the cache size following a cache miss, its simply * a matter of choosing a single page to evict. In our model, we * have variable sized cache blocks (rangeing from 512 bytes to * 128K bytes). We therefore choose a set of blocks to evict to make * space for a cache miss that approximates as closely as possible * the space used by the new block. * * See also: "ARC: A Self-Tuning, Low Overhead Replacement Cache" * by N. Megiddo & D. Modha, FAST 2003 */ ... Специалист подобен флюсу: полнота его одностороння. --- GoldED+/BSD 1.1.5-b20110223-b20110223 |
#19
|
|||
|
|||
Re: parallel mounting for ZFS filesystem
Jurij Ivliev написал(а) к Eugene Grosbein в May 19 13:48:06 по местному времени:
From: Jurij Ivliev <ii@any.com.ru> Нi, Eugene! On Mon, 06 May 2019 17:06:08 +0300, Eugene Grosbein <Eugene.Grosbein@f1.n5006.z2.fidonet.org> wrote: EG>>> Сначала нужно найти в спецификации, а было ли что ломать изначально. AK>> спецификации не существует (если и существовала - орацл ей не поделится) AK>> существует устоявшееся поведение, и общая ориентация zfs на работу без AK>> милых AK>> костыликов и подпорочек там, где без них вполне прекрасно можно обойтись. AK>> Причем до рукожопиков - все работало. EG> Ну то есть работало без гарантий. Как там говорится, AS IS. В оракловых доках таки да, явных указаний найтить не получается. Про особенности автомонтировния ZFS читал когда-то очень давно, скорее всего ещё у солнцевских. И скорее всего не в собственно документации, а в какой-то их статье про ZFS. А вот код, который отвечает за порядок монтирования, имеется. И до сих пор работает исправно. cddl/contrib/opensolaris/lib/libzfs/common/libzfs_mount.c, функция static int mountpoint_cmp(void const a, void const b); используется для сравнения в qsort по списку датасетов, кандидатов на монтирование. Свои слова про неотключаемость забираю взад. Таки невнимательно diff разглядывал. Есть там переменная окружения ZFSSERIALMOUNT. Если выставить её в rc.conf - всё работает как раньше. Остаётся понять что ломается при многопоточном монтировании. --- ifmail v.2.15dev5.4 |
#20
|
|||
|
|||
parallel mounting for ZFS filesystem
Slawa Olhovchenkov написал(а) к Jurij Ivliev в May 19 14:16:20 по местному времени:
Нello Jurij! 06 May 19, Jurij Ivliev writes to Eugene Grosbein: EG>>>> Сначала нужно найти в спецификации, а было ли что ломать изначально. AK>>> спецификации не существует (если и существовала - орацл ей не AK>>> поделится) существует устоявшееся поведение, и общая ориентация zfs AK>>> на работу без милых костыликов и подпорочек там, где без них вполне AK>>> прекрасно можно обойтись. Причем до рукожопиков - все работало. EG>> Ну то есть работало без гарантий. Как там говорится, AS IS. JI> В оракловых доках таки да, явных указаний найтить не получается. JI> Про особенности автомонтировния ZFS читал когда-то очень давно, скорее JI> всего ещё у солнцевских. И скорее всего не в собственно документации, JI> а в какой-то их статье про ZFS. JI> А вот код, который отвечает за порядок монтирования, имеется. JI> И до сих пор работает исправно. JI> cddl/contrib/opensolaris/lib/libzfs/common/libzfs_mount.c, функция JI> static int mountpoint_cmp(void const a, void const b); JI> используется для сравнения в qsort по списку датасетов, кандидатов JI> на монтирование. JI> Свои слова про неотключаемость забираю взад. Таки невнимательно JI> diff разглядывал. Есть там переменная окружения ZFSSERIALMOUNT. JI> Если выставить её в rc.conf - всё работает как раньше. JI> Остаётся понять что ломается при многопоточном монтировании. мне лень отматывать и смотреть что конкретно у тебя, но если встречается ситуация типа pool1/a => X/a pool1/a/b/c => X/a/b/c pool2/a pool2/a/b => X/a/b то вообще говоря результат представляется неопределенным и даже в случае однопоточного монтирования зависящим от порядка монтирования самих пулов pool1/pool2 и pool2/pool1 дадут разные результаты. PS: все же отмотал. у тебя почти такая ситуация -- двойное монирование home. убери нахрен с первого пула и проверь. ... Нет, ребята, пулемета я вам не дам --- GoldED+/BSD 1.1.5-b20110223-b20110223 |