Roger that. I suppose that we could make that part of an epic and note that
Log4j's own implementations are fully supported (or not and which ones).

I'm still not convinced that this is a "good thing" at the interface level
because we could only document what each of our Logger implementations
support instead without "forcing" the interface on other 3rd party impls
(which I have no idea if there are any.)

Gary

On Mon, Jul 25, 2016 at 9:43 AM, Mikael Ståldal <mikael.stal...@magine.com>
wrote:

> The purpose is that the user of Log4j can be sure that the Logger is
> serializable.
>
> On Mon, Jul 25, 2016 at 6:38 PM, Gary Gregory <garydgreg...@gmail.com>
> wrote:
>
>> But to what purpose? Does Log4j itself need this? Is this a case of YAGNI?
>>
>> If I have a Logger in an object I serialize, and the class implementing
>> Logger is serializable, then I am good to go.
>>
>> Making Logger Serializable, would make this obvious to users and might
>> make some developers warm and fuzzy. It just seems like an odd requirement
>> for ALL implementors of Loggers to be serializable. As a third party Logger
>> implementor, that does not mean it would be done properly. Implementing the
>> interface is no guarantee of proper behavior.
>>
>> Overall, it seems like it would make Log4j less friendly to 3rd party
>> implementors. Are there even any?
>>
>> Gary
>>
>> On Mon, Jul 25, 2016 at 9:07 AM, Mikael Ståldal <
>> mikael.stal...@magine.com> wrote:
>>
>>> But maybe we actually want to force all implementations to be
>>> serializable?
>>>
>>> On Mon, Jul 25, 2016 at 6:01 PM, Remko Popma <remko.po...@gmail.com>
>>> wrote:
>>>
>>>> I think the theory is it is preferable to let implementors of an
>>>> interface implement java.io.Serializable instead of letting the interface
>>>> extend java.io.Serializable. That gives future implementors the freedom to
>>>> choose to either implement Serializable or not.
>>>>
>>>> On Tue, Jul 26, 2016 at 12:49 AM, Mikael Ståldal <
>>>> mikael.stal...@magine.com> wrote:
>>>>
>>>>> It seems like serializable logger is useful in Apache Spark, which is
>>>>> popular to use from Scala.
>>>>>
>>>>> On Mon, Jul 25, 2016 at 4:20 PM, Matt Sicker <boa...@gmail.com> wrote:
>>>>>
>>>>>> Do Scala programmers use Serializable a lot, or is there a better
>>>>>> mechanism there? Because if there's a more Scala way of doing it, that
>>>>>> would make more sense. Otherwise, you can always add Serializable later,
>>>>>> but you shouldn't remove it once it's part of the public API.
>>>>>>
>>>>>> On 25 July 2016 at 03:06, Mikael Ståldal <mikael.stal...@magine.com>
>>>>>> wrote:
>>>>>>
>>>>>>> I am asking this since I'm considering making the Scala Logger
>>>>>>> wrapper Serializable. Would that be a good idea?
>>>>>>>
>>>>>>> On Mon, Jul 25, 2016 at 10:00 AM, Mikael Ståldal <
>>>>>>> mikael.stal...@magine.com> wrote:
>>>>>>>
>>>>>>>> Users can rely on the fact that loggers are always Serializable.
>>>>>>>>
>>>>>>>> I guess we could also document that fact if we don't want to mark
>>>>>>>> the interface Serializable.
>>>>>>>>
>>>>>>>> On Fri, Jul 22, 2016 at 7:16 PM, Ralph Goers <
>>>>>>>> ralph.go...@dslextreme.com> wrote:
>>>>>>>>
>>>>>>>>> What advantage is gained by declaring the interface Serializable?
>>>>>>>>>
>>>>>>>>> Ralph
>>>>>>>>>
>>>>>>>>> On Jul 22, 2016, at 9:38 AM, Mikael Ståldal <
>>>>>>>>> mikael.stal...@magine.com> wrote:
>>>>>>>>>
>>>>>>>>> I don't think we should limit ourselves to what we add to the API
>>>>>>>>> just for the sake of alternative implementations.
>>>>>>>>>
>>>>>>>>> On Fri, Jul 22, 2016 at 6:09 PM, Gary Gregory <
>>>>>>>>> garydgreg...@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> I do not think you want to _force_ all implementation to be
>>>>>>>>>> serializable. Serialization is not a main feature of loggers, 
>>>>>>>>>> logging is.
>>>>>>>>>>
>>>>>>>>>> Gary
>>>>>>>>>>
>>>>>>>>>> On Fri, Jul 22, 2016 at 12:45 AM, Mikael Ståldal <
>>>>>>>>>> mikael.stal...@magine.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> But if this is a feature that is useful for some users, why not
>>>>>>>>>>> fully advertise it by making the Logger interface Serializable?
>>>>>>>>>>>
>>>>>>>>>>> On Thu, Jul 21, 2016 at 7:53 PM, Matt Sicker <boa...@gmail.com>
>>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> It's Serializable because there was a feature request for it.
>>>>>>>>>>>> The jira ticket is internal (reported by Gary), but I recall 
>>>>>>>>>>>> either another
>>>>>>>>>>>> bug or a mailing list post where the justification was so that 
>>>>>>>>>>>> serializable
>>>>>>>>>>>> classes can still use a Logger instance field (not everyone uses a 
>>>>>>>>>>>> static
>>>>>>>>>>>> field for the Logger for some reason).
>>>>>>>>>>>>
>>>>>>>>>>>> On 21 July 2016 at 11:32, Ralph Goers <
>>>>>>>>>>>> ralph.go...@dslextreme.com> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> I asked myself the same question and I guess the answer is
>>>>>>>>>>>>> that Logger is included in lots of classes, many of which are 
>>>>>>>>>>>>> Serializable.
>>>>>>>>>>>>> It would be easier for us to make AbstractLogger Serializable 
>>>>>>>>>>>>> then for all
>>>>>>>>>>>>> the users to mark it as transient and have to manually 
>>>>>>>>>>>>> instantiate the
>>>>>>>>>>>>> Logger during de-Serialization.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Ralph
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Jul 21, 2016, at 9:29 AM, Mikael Ståldal <
>>>>>>>>>>>>> mikael.stal...@magine.com> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>> So then why is AbstractLogger, and our implementation in
>>>>>>>>>>>>> log4j-core, Serializable?
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Thu, Jul 21, 2016 at 6:18 PM, Gary Gregory <
>>>>>>>>>>>>> garydgreg...@gmail.com> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> I do not think there is a way to know what folks are doing
>>>>>>>>>>>>>> out there...
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Gary
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Thu, Jul 21, 2016 at 9:13 AM, Mikael Ståldal <
>>>>>>>>>>>>>> mikael.stal...@magine.com> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Are there any providers not using AbstractLogger?
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Thu, Jul 21, 2016 at 6:09 PM, Gary Gregory <
>>>>>>>>>>>>>>> garydgreg...@gmail.com> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Probably to leave the decision on whether to support
>>>>>>>>>>>>>>>> serialization to each provider.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Gary
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On Jul 21, 2016 3:14 AM, "Mikael Ståldal" <
>>>>>>>>>>>>>>>> mikael.stal...@magine.com> wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> AbstractLogger is Serializable, but the Logger interface
>>>>>>>>>>>>>>>>> is not. Why is it so?
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>>> [image: MagineTV]
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> *Mikael Ståldal*
>>>>>>>>>>>>>>>>> Senior software developer
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> *Magine TV*
>>>>>>>>>>>>>>>>> mikael.stal...@magine.com
>>>>>>>>>>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |
>>>>>>>>>>>>>>>>> www.magine.com
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Privileged and/or Confidential Information may be
>>>>>>>>>>>>>>>>> contained in this message. If you are not the addressee 
>>>>>>>>>>>>>>>>> indicated in this
>>>>>>>>>>>>>>>>> message
>>>>>>>>>>>>>>>>> (or responsible for delivery of the message to such a
>>>>>>>>>>>>>>>>> person), you may not copy or deliver this message to anyone. 
>>>>>>>>>>>>>>>>> In such case,
>>>>>>>>>>>>>>>>> you should destroy this message and kindly notify the
>>>>>>>>>>>>>>>>> sender by reply email.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>> [image: MagineTV]
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> *Mikael Ståldal*
>>>>>>>>>>>>>>> Senior software developer
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> *Magine TV*
>>>>>>>>>>>>>>> mikael.stal...@magine.com
>>>>>>>>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |
>>>>>>>>>>>>>>> www.magine.com
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Privileged and/or Confidential Information may be contained
>>>>>>>>>>>>>>> in this message. If you are not the addressee indicated in this 
>>>>>>>>>>>>>>> message
>>>>>>>>>>>>>>> (or responsible for delivery of the message to such a
>>>>>>>>>>>>>>> person), you may not copy or deliver this message to anyone. In 
>>>>>>>>>>>>>>> such case,
>>>>>>>>>>>>>>> you should destroy this message and kindly notify the sender
>>>>>>>>>>>>>>> by reply email.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> --
>>>>>>>>>>>>>> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org
>>>>>>>>>>>>>> Java Persistence with Hibernate, Second Edition
>>>>>>>>>>>>>> <http://www.manning.com/bauer3/>
>>>>>>>>>>>>>> JUnit in Action, Second Edition
>>>>>>>>>>>>>> <http://www.manning.com/tahchiev/>
>>>>>>>>>>>>>> Spring Batch in Action <http://www.manning.com/templier/>
>>>>>>>>>>>>>> Blog: http://garygregory.wordpress.com
>>>>>>>>>>>>>> Home: http://garygregory.com/
>>>>>>>>>>>>>> Tweet! http://twitter.com/GaryGregory
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> [image: MagineTV]
>>>>>>>>>>>>>
>>>>>>>>>>>>> *Mikael Ståldal*
>>>>>>>>>>>>> Senior software developer
>>>>>>>>>>>>>
>>>>>>>>>>>>> *Magine TV*
>>>>>>>>>>>>> mikael.stal...@magine.com
>>>>>>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |
>>>>>>>>>>>>> www.magine.com
>>>>>>>>>>>>>
>>>>>>>>>>>>> Privileged and/or Confidential Information may be contained in
>>>>>>>>>>>>> this message. If you are not the addressee indicated in this 
>>>>>>>>>>>>> message
>>>>>>>>>>>>> (or responsible for delivery of the message to such a person),
>>>>>>>>>>>>> you may not copy or deliver this message to anyone. In such case,
>>>>>>>>>>>>> you should destroy this message and kindly notify the sender
>>>>>>>>>>>>> by reply email.
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> Matt Sicker <boa...@gmail.com>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> [image: MagineTV]
>>>>>>>>>>>
>>>>>>>>>>> *Mikael Ståldal*
>>>>>>>>>>> Senior software developer
>>>>>>>>>>>
>>>>>>>>>>> *Magine TV*
>>>>>>>>>>> mikael.stal...@magine.com
>>>>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>>>>>>>>>
>>>>>>>>>>> Privileged and/or Confidential Information may be contained in
>>>>>>>>>>> this message. If you are not the addressee indicated in this message
>>>>>>>>>>> (or responsible for delivery of the message to such a person),
>>>>>>>>>>> you may not copy or deliver this message to anyone. In such case,
>>>>>>>>>>> you should destroy this message and kindly notify the sender by
>>>>>>>>>>> reply email.
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org
>>>>>>>>>> Java Persistence with Hibernate, Second Edition
>>>>>>>>>> <http://www.manning.com/bauer3/>
>>>>>>>>>> JUnit in Action, Second Edition
>>>>>>>>>> <http://www.manning.com/tahchiev/>
>>>>>>>>>> Spring Batch in Action <http://www.manning.com/templier/>
>>>>>>>>>> Blog: http://garygregory.wordpress.com
>>>>>>>>>> Home: http://garygregory.com/
>>>>>>>>>> Tweet! http://twitter.com/GaryGregory
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> [image: MagineTV]
>>>>>>>>>
>>>>>>>>> *Mikael Ståldal*
>>>>>>>>> Senior software developer
>>>>>>>>>
>>>>>>>>> *Magine TV*
>>>>>>>>> mikael.stal...@magine.com
>>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>>>>>>>
>>>>>>>>> Privileged and/or Confidential Information may be contained in
>>>>>>>>> this message. If you are not the addressee indicated in this message
>>>>>>>>> (or responsible for delivery of the message to such a person), you
>>>>>>>>> may not copy or deliver this message to anyone. In such case,
>>>>>>>>> you should destroy this message and kindly notify the sender by
>>>>>>>>> reply email.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> [image: MagineTV]
>>>>>>>>
>>>>>>>> *Mikael Ståldal*
>>>>>>>> Senior software developer
>>>>>>>>
>>>>>>>> *Magine TV*
>>>>>>>> mikael.stal...@magine.com
>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>>>>>>
>>>>>>>> Privileged and/or Confidential Information may be contained in this
>>>>>>>> message. If you are not the addressee indicated in this message
>>>>>>>> (or responsible for delivery of the message to such a person), you
>>>>>>>> may not copy or deliver this message to anyone. In such case,
>>>>>>>> you should destroy this message and kindly notify the sender by
>>>>>>>> reply email.
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> [image: MagineTV]
>>>>>>>
>>>>>>> *Mikael Ståldal*
>>>>>>> Senior software developer
>>>>>>>
>>>>>>> *Magine TV*
>>>>>>> mikael.stal...@magine.com
>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>>>>>
>>>>>>> Privileged and/or Confidential Information may be contained in this
>>>>>>> message. If you are not the addressee indicated in this message
>>>>>>> (or responsible for delivery of the message to such a person), you
>>>>>>> may not copy or deliver this message to anyone. In such case,
>>>>>>> you should destroy this message and kindly notify the sender by
>>>>>>> reply email.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Matt Sicker <boa...@gmail.com>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> [image: MagineTV]
>>>>>
>>>>> *Mikael Ståldal*
>>>>> Senior software developer
>>>>>
>>>>> *Magine TV*
>>>>> mikael.stal...@magine.com
>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>>>
>>>>> Privileged and/or Confidential Information may be contained in this
>>>>> message. If you are not the addressee indicated in this message
>>>>> (or responsible for delivery of the message to such a person), you may
>>>>> not copy or deliver this message to anyone. In such case,
>>>>> you should destroy this message and kindly notify the sender by reply
>>>>> email.
>>>>>
>>>>
>>>>
>>>
>>>
>>> --
>>> [image: MagineTV]
>>>
>>> *Mikael Ståldal*
>>> Senior software developer
>>>
>>> *Magine TV*
>>> mikael.stal...@magine.com
>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>
>>> Privileged and/or Confidential Information may be contained in this
>>> message. If you are not the addressee indicated in this message
>>> (or responsible for delivery of the message to such a person), you may
>>> not copy or deliver this message to anyone. In such case,
>>> you should destroy this message and kindly notify the sender by reply
>>> email.
>>>
>>
>>
>>
>> --
>> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org
>> Java Persistence with Hibernate, Second Edition
>> <http://www.manning.com/bauer3/>
>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
>> Spring Batch in Action <http://www.manning.com/templier/>
>> Blog: http://garygregory.wordpress.com
>> Home: http://garygregory.com/
>> Tweet! http://twitter.com/GaryGregory
>>
>
>
>
> --
> [image: MagineTV]
>
> *Mikael Ståldal*
> Senior software developer
>
> *Magine TV*
> mikael.stal...@magine.com
> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>
> Privileged and/or Confidential Information may be contained in this
> message. If you are not the addressee indicated in this message
> (or responsible for delivery of the message to such a person), you may not
> copy or deliver this message to anyone. In such case,
> you should destroy this message and kindly notify the sender by reply
> email.
>



-- 
E-Mail: garydgreg...@gmail.com | ggreg...@apache.org
Java Persistence with Hibernate, Second Edition
<http://www.manning.com/bauer3/>
JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
Spring Batch in Action <http://www.manning.com/templier/>
Blog: http://garygregory.wordpress.com
Home: http://garygregory.com/
Tweet! http://twitter.com/GaryGregory

Reply via email to